@ckelsoe/prompt-architect 3.2.2 → 3.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude-plugin/marketplace.json +3 -3
- package/.claude-plugin/plugin.json +2 -2
- package/CHANGELOG.md +135 -5
- package/MIGRATION.md +1 -1
- package/README.md +32 -47
- package/adapters/README.md +1 -1
- package/adapters/system-prompt.md +115 -59
- package/package.json +5 -4
- package/scripts/install.js +52 -22
- package/scripts/test.js +88 -40
- package/scripts/validate-skill.js +184 -56
- package/skills/prompt-architect/SKILL.md +94 -79
- package/skills/prompt-architect/assets/templates/ape_template.txt +14 -3
- package/skills/prompt-architect/assets/templates/bab_template.txt +23 -10
- package/skills/prompt-architect/assets/templates/broke_template.txt +31 -6
- package/skills/prompt-architect/assets/templates/cai-critique-revise_template.txt +16 -8
- package/skills/prompt-architect/assets/templates/care_template.txt +4 -0
- package/skills/prompt-architect/assets/templates/chain-of-density_template.txt +64 -35
- package/skills/prompt-architect/assets/templates/chain-of-thought_template.txt +8 -0
- package/skills/prompt-architect/assets/templates/co-star_template.txt +8 -0
- package/skills/prompt-architect/assets/templates/crispe_template.txt +6 -0
- package/skills/prompt-architect/assets/templates/ctf_template.txt +8 -0
- package/skills/prompt-architect/assets/templates/devils-advocate_template.txt +7 -0
- package/skills/prompt-architect/assets/templates/hybrid_template.txt +44 -24
- package/skills/prompt-architect/assets/templates/iterative-compression_template.txt +74 -0
- package/skills/prompt-architect/assets/templates/least-to-most_template.txt +4 -0
- package/skills/prompt-architect/assets/templates/plan-and-solve_template.txt +4 -0
- package/skills/prompt-architect/assets/templates/pre-mortem_template.txt +24 -14
- package/skills/prompt-architect/assets/templates/race_template.txt +9 -0
- package/skills/prompt-architect/assets/templates/rcot_template.txt +8 -0
- package/skills/prompt-architect/assets/templates/react_template.txt +38 -16
- package/skills/prompt-architect/assets/templates/rise-ie_template.txt +4 -0
- package/skills/prompt-architect/assets/templates/rise-ix_template.txt +3 -3
- package/skills/prompt-architect/assets/templates/risen_template.txt +7 -0
- package/skills/prompt-architect/assets/templates/rpef_template.txt +16 -11
- package/skills/prompt-architect/assets/templates/rtf_template.txt +9 -0
- package/skills/prompt-architect/assets/templates/skeleton-of-thought_template.txt +18 -10
- package/skills/prompt-architect/assets/templates/step-back_template.txt +4 -0
- package/skills/prompt-architect/assets/templates/tidd-ec_template.txt +54 -31
- package/skills/prompt-architect/assets/templates/tree-of-thought_template.txt +37 -21
- package/skills/prompt-architect/references/frameworks/ape.md +145 -57
- package/skills/prompt-architect/references/frameworks/bab.md +139 -58
- package/skills/prompt-architect/references/frameworks/broke.md +157 -57
- package/skills/prompt-architect/references/frameworks/cai-critique-revise.md +184 -76
- package/skills/prompt-architect/references/frameworks/care.md +67 -36
- package/skills/prompt-architect/references/frameworks/chain-of-density.md +111 -417
- package/skills/prompt-architect/references/frameworks/chain-of-thought.md +45 -19
- package/skills/prompt-architect/references/frameworks/co-star.md +102 -44
- package/skills/prompt-architect/references/frameworks/crispe.md +7 -5
- package/skills/prompt-architect/references/frameworks/ctf.md +75 -37
- package/skills/prompt-architect/references/frameworks/devils-advocate.md +105 -58
- package/skills/prompt-architect/references/frameworks/iterative-compression.md +448 -0
- package/skills/prompt-architect/references/frameworks/least-to-most.md +35 -13
- package/skills/prompt-architect/references/frameworks/plan-and-solve.md +38 -9
- package/skills/prompt-architect/references/frameworks/pre-mortem.md +182 -72
- package/skills/prompt-architect/references/frameworks/race.md +93 -38
- package/skills/prompt-architect/references/frameworks/rcot.md +1 -1
- package/skills/prompt-architect/references/frameworks/react.md +230 -97
- package/skills/prompt-architect/references/frameworks/reverse-role.md +23 -16
- package/skills/prompt-architect/references/frameworks/rise.md +120 -77
- package/skills/prompt-architect/references/frameworks/risen.md +82 -28
- package/skills/prompt-architect/references/frameworks/rpef.md +227 -58
- package/skills/prompt-architect/references/frameworks/rtf.md +4 -2
- package/skills/prompt-architect/references/frameworks/self-refine.md +4 -2
- package/skills/prompt-architect/references/frameworks/skeleton-of-thought.md +68 -22
- package/skills/prompt-architect/references/frameworks/step-back.md +48 -16
- package/skills/prompt-architect/references/frameworks/tidd-ec.md +129 -51
- package/skills/prompt-architect/references/frameworks/tree-of-thought.md +112 -37
- package/skills/prompt-architect/scripts/framework_analyzer.py +0 -807
- package/skills/prompt-architect/scripts/prompt_evaluator.py +0 -336
|
@@ -4,12 +4,14 @@
|
|
|
4
4
|
|
|
5
5
|
Step-Back Prompting is a two-step reasoning technique where the model first answers a higher-level "step-back" question that retrieves the underlying principles, concepts, or facts relevant to the original problem — then uses those retrieved principles as context to answer the original question. By abstracting first, the model grounds its reasoning in first principles rather than diving directly into a potentially error-prone specific answer.
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
When the finished prompt is emitted, its section headers — ORIGINAL QUESTION, SOURCE MATERIAL, STEP-BACK, PRINCIPLE APPLICATION — are stripped, and the model receives a flat block of prose. Each slot is therefore written as a complete instruction that still reads correctly once its header is gone: the step-back question ships inside "Before answering directly, first answer this higher-level question," and the final step inside "Using the principles you just described, now answer the original question."
|
|
8
|
+
|
|
9
|
+
**Research basis:** "Take a Step Back: Evoking Reasoning via Abstraction in Large Language Models" (Zheng et al., Google DeepMind, arXiv:2310.06117, ICLR 2024). Demonstrated +7% on MMLU Physics, +11% on Chemistry, +27% on TimeQA, and +7% on MuSiQue vs. direct prompting (PaLM-2L).
|
|
8
10
|
|
|
9
11
|
## Components
|
|
10
12
|
|
|
11
13
|
### Step 1: The Step-Back Question
|
|
12
|
-
**Purpose:** Reformulate the original question into a higher-level, more abstract question that retrieves the underlying principles or concepts needed.
|
|
14
|
+
**Purpose:** Reformulate the original question into a higher-level, more abstract question that retrieves the underlying principles or concepts needed. Because the STEP-BACK header disappears at emission, the abstract question cannot stand as a bare fragment; it ships inside the carrier sentence `Before answering directly, first answer this higher-level question: …`, which keeps it readable as an instruction on its own.
|
|
13
15
|
|
|
14
16
|
**Pattern:** Strip away specifics → ask for the general principle/rule/concept.
|
|
15
17
|
|
|
@@ -19,26 +21,40 @@ Step-Back Prompting is a two-step reasoning technique where the model first answ
|
|
|
19
21
|
- Original: "Was the Battle of Stalingrad a turning point?" → Step-back: "What factors define a military turning point in a campaign?"
|
|
20
22
|
|
|
21
23
|
### Step 2: Principle Retrieval
|
|
22
|
-
**Purpose:** Answer the step-back question to retrieve the relevant principles/concepts/facts. This becomes the reasoning context.
|
|
24
|
+
**Purpose:** Answer the step-back question to retrieve the relevant principles/concepts/facts. This becomes the reasoning context. This is not a written slot — nothing is typed here at emission. It is the model's response to the step-back question, produced between the abstraction and the final answer, and it becomes the context the final step draws on.
|
|
23
25
|
|
|
24
26
|
### Step 3: Final Answer
|
|
25
|
-
**Purpose:** Use the retrieved principles as context to answer the original specific question.
|
|
27
|
+
**Purpose:** Use the retrieved principles as context to answer the original specific question. It ships inside the carrier sentence `Using the principles/concepts you just described, now answer the original question: …`, so the restated question reads as a directive once the PRINCIPLE APPLICATION header is stripped.
|
|
26
28
|
|
|
27
29
|
**Trigger:** "Based on these principles, now answer the original question: [original question]"
|
|
28
30
|
|
|
29
31
|
## Template Structure
|
|
30
32
|
|
|
33
|
+
Section headers — `ORIGINAL QUESTION:`, `SOURCE MATERIAL:`, `STEP-BACK:`,
|
|
34
|
+
`PRINCIPLE APPLICATION:` — are stripped at emission, so each slot's meaning has to be
|
|
35
|
+
carried by the sentence in and around it rather than by the header above it. The step-back
|
|
36
|
+
question and the final question therefore ship inside carrier sentences, and the
|
|
37
|
+
`SOURCE MATERIAL` block is optional prose that names the artifact and ties it to the
|
|
38
|
+
reasoning below.
|
|
39
|
+
|
|
31
40
|
```
|
|
32
41
|
ORIGINAL QUESTION:
|
|
33
42
|
[The specific question you want answered]
|
|
34
43
|
|
|
44
|
+
SOURCE MATERIAL:
|
|
45
|
+
[Optional — paste the code, document, or system design the question above is about here. If
|
|
46
|
+
you have nothing to paste, delete this bracketed block along with the sentence directly
|
|
47
|
+
below it.]
|
|
48
|
+
Use the material above as the factual basis for the reasoning below — evaluate what is
|
|
49
|
+
actually there, not what is typical or assumed.
|
|
50
|
+
|
|
35
51
|
STEP-BACK:
|
|
36
52
|
Before answering directly, first answer this higher-level question:
|
|
37
|
-
[
|
|
53
|
+
[Rephrase the original into a more abstract question about underlying principles, concepts, or rules]
|
|
38
54
|
|
|
39
55
|
PRINCIPLE APPLICATION:
|
|
40
56
|
Using the principles/concepts you just described, now answer the original question:
|
|
41
|
-
[Restate original question]
|
|
57
|
+
[Restate original question here]
|
|
42
58
|
```
|
|
43
59
|
|
|
44
60
|
### Auto Step-Back (Model generates its own step-back question):
|
|
@@ -52,12 +68,18 @@ Question: [your question]
|
|
|
52
68
|
|
|
53
69
|
## Complete Examples
|
|
54
70
|
|
|
71
|
+
Every example below is shown in emitted form: each slot reads as a complete instruction,
|
|
72
|
+
so nothing is lost when the section headers are stripped. Where the question is about an
|
|
73
|
+
existing artifact, the `SOURCE MATERIAL` block carries it and the reasoning refers to "the
|
|
74
|
+
X above"; where the task starts from nothing, that block is deleted.
|
|
75
|
+
|
|
55
76
|
### Example 1: Technical Decision
|
|
56
77
|
|
|
57
78
|
**Before Step-Back:**
|
|
58
79
|
"Should I use PostgreSQL or MongoDB for a social feed application?"
|
|
59
80
|
|
|
60
|
-
**After Step-Back
|
|
81
|
+
**After Step-Back** (no source material — the question is self-contained, so the
|
|
82
|
+
`SOURCE MATERIAL` block is deleted):
|
|
61
83
|
```
|
|
62
84
|
ORIGINAL QUESTION:
|
|
63
85
|
Should I use PostgreSQL or MongoDB for a social feed application?
|
|
@@ -79,19 +101,24 @@ feed of posts, and can like/comment?
|
|
|
79
101
|
**Before Step-Back:**
|
|
80
102
|
"Why does my async function return undefined when I call it?"
|
|
81
103
|
|
|
82
|
-
**After Step-Back
|
|
104
|
+
**After Step-Back** (source material supplied):
|
|
83
105
|
```
|
|
84
106
|
ORIGINAL QUESTION:
|
|
85
107
|
Why does my async function return undefined when I call it?
|
|
86
108
|
|
|
109
|
+
SOURCE MATERIAL:
|
|
110
|
+
[Paste the async function and the code that calls it here]
|
|
111
|
+
Use the material above as the factual basis for the reasoning below — evaluate what is
|
|
112
|
+
actually there, not what is typical or assumed.
|
|
113
|
+
|
|
87
114
|
STEP-BACK:
|
|
88
115
|
First explain: What are the core principles of how JavaScript async/await
|
|
89
116
|
works, specifically regarding what an async function returns and how callers
|
|
90
117
|
must handle it?
|
|
91
118
|
|
|
92
119
|
PRINCIPLE APPLICATION:
|
|
93
|
-
Using those principles, diagnose
|
|
94
|
-
|
|
120
|
+
Using those principles, diagnose the specific issue in the code above:
|
|
121
|
+
why does it return undefined, and what is the fix?
|
|
95
122
|
```
|
|
96
123
|
|
|
97
124
|
### Example 3: Architecture Review
|
|
@@ -99,21 +126,25 @@ Why does this return undefined, and what is the fix?
|
|
|
99
126
|
**Before Step-Back:**
|
|
100
127
|
"Is our current authentication flow secure?"
|
|
101
128
|
|
|
102
|
-
**After Step-Back
|
|
129
|
+
**After Step-Back** (source material supplied):
|
|
103
130
|
```
|
|
104
131
|
ORIGINAL QUESTION:
|
|
105
132
|
Is our current authentication flow secure?
|
|
106
133
|
|
|
134
|
+
SOURCE MATERIAL:
|
|
135
|
+
[Paste the authentication flow — the login sequence, session handling, and token logic — here]
|
|
136
|
+
Use the material above as the factual basis for the reasoning below — evaluate what is
|
|
137
|
+
actually there, not what is typical or assumed.
|
|
138
|
+
|
|
107
139
|
STEP-BACK:
|
|
108
|
-
Before reviewing
|
|
140
|
+
Before reviewing the specific implementation, first outline: What are the
|
|
109
141
|
fundamental security principles and threat models that a well-designed
|
|
110
142
|
authentication flow must address? Include: credential handling, session
|
|
111
143
|
management, token security, and common attack vectors.
|
|
112
144
|
|
|
113
145
|
PRINCIPLE APPLICATION:
|
|
114
|
-
Using those security principles as a checklist, review
|
|
115
|
-
flow
|
|
116
|
-
[Paste authentication flow]
|
|
146
|
+
Using those security principles as a checklist, review the authentication
|
|
147
|
+
flow above and identify any gaps or vulnerabilities.
|
|
117
148
|
```
|
|
118
149
|
|
|
119
150
|
### Example 4: Content/Writing
|
|
@@ -121,7 +152,8 @@ flow below and identify any gaps or vulnerabilities.
|
|
|
121
152
|
**Before Step-Back:**
|
|
122
153
|
"Write an introduction for my article about climate change and agriculture."
|
|
123
154
|
|
|
124
|
-
**After Step-Back
|
|
155
|
+
**After Step-Back** (no source material — the introduction is written from scratch, so the
|
|
156
|
+
`SOURCE MATERIAL` block and the sentence below it are both deleted):
|
|
125
157
|
```
|
|
126
158
|
ORIGINAL QUESTION:
|
|
127
159
|
Write an introduction for my article about climate change and agriculture.
|
|
@@ -2,7 +2,9 @@
|
|
|
2
2
|
|
|
3
3
|
## Overview
|
|
4
4
|
|
|
5
|
-
TIDD-EC is a precision-focused prompt
|
|
5
|
+
TIDD-EC is a precision-focused prompt template that provides clear boundaries and actionable guidance through explicit "Dos and Don'ts." It emphasizes clarity and specificity in task execution, making it useful for tasks requiring detailed instructions and explicit constraints.
|
|
6
|
+
|
|
7
|
+
**Origin:** Community convention, no verified originator. The earliest traceable appearance is "Mastering Prompt Engineering: A Guide to the CO-STAR and TIDD-EC Frameworks," published 5 February 2024 on Medium by the corporate account **Vivas.AI** (Vuram Technology Solutions Pvt. Ltd., Chennai). That post names no individual author and cites no source, introducing the framework only as "another framework emerges on the horizon." No earlier source, named originator, or published evaluation of TIDD-EC could be found. Not research-backed.
|
|
6
8
|
|
|
7
9
|
**Key Strength**: Explicit positive (Do) and negative (Don't) guidance prevents errors and misinterpretations.
|
|
8
10
|
|
|
@@ -98,33 +100,81 @@ TIDD-EC is a precision-focused prompt engineering framework that excels in provi
|
|
|
98
100
|
|
|
99
101
|
## Template Structure
|
|
100
102
|
|
|
103
|
+
Section headers are stripped at emission, so every slot's meaning is carried by the prose
|
|
104
|
+
around and inside it rather than by the header above it. This matters most for the Don't
|
|
105
|
+
list: the negation must live in each bullet itself. A bare noun phrase under a `DON'T:`
|
|
106
|
+
header reads as an instruction to DO the very thing being forbidden once the header is
|
|
107
|
+
gone. Do not reintroduce header-only structure.
|
|
108
|
+
|
|
101
109
|
```
|
|
110
|
+
SOURCE MATERIAL:
|
|
111
|
+
[Optional — paste the artifact this task operates on here, naming it concretely, e.g. "Paste
|
|
112
|
+
the customer's message here" or "Paste the draft to translate here". If this task generates
|
|
113
|
+
from scratch, delete this bracketed block along with the sentence directly below it.]
|
|
114
|
+
Use the material above as the content for the work described below.
|
|
115
|
+
|
|
102
116
|
TASK TYPE:
|
|
103
|
-
|
|
117
|
+
The category of task you are performing is: [name the activity category only — e.g. "Customer
|
|
118
|
+
Support Response", "Data Analysis and Summarization", "Content Translation with Context
|
|
119
|
+
Preservation". Specifics of this particular case belong in the background at the end.]
|
|
104
120
|
|
|
105
121
|
INSTRUCTIONS:
|
|
106
|
-
|
|
107
|
-
1. [
|
|
108
|
-
|
|
109
|
-
|
|
122
|
+
Carry out the task as follows.
|
|
123
|
+
1. [First step, as a complete imperative sentence beginning with a verb — e.g. "Read the
|
|
124
|
+
customer's message and identify the specific problem they report."]
|
|
125
|
+
2. [Continue in the same form, one step per line, for as many steps as the methodology needs.
|
|
126
|
+
If standing guidelines govern this task rather than an ordered procedure, delete the numbered
|
|
127
|
+
list and keep only the standards below.]
|
|
128
|
+
|
|
129
|
+
Observe these standards throughout:
|
|
130
|
+
[Optional — one per line, each a complete imperative sentence, e.g. "Follow the company style
|
|
131
|
+
guide.", "Use a three-paragraph structure: problem, solution, next steps." If the numbered
|
|
132
|
+
steps are the whole methodology, delete this bracketed block along with the sentence above it.]
|
|
110
133
|
|
|
111
134
|
DO:
|
|
112
|
-
|
|
113
|
-
- [
|
|
114
|
-
- [
|
|
135
|
+
The output must satisfy every requirement below:
|
|
136
|
+
- [Always <required action, element, or information>]
|
|
137
|
+
- [Use <required language, tone, or terminology>]
|
|
138
|
+
- [Follow <required structure or format>]
|
|
139
|
+
- [Add more as needed, each led by "Always" or an imperative verb so it reads as a
|
|
140
|
+
requirement on its own line.]
|
|
115
141
|
|
|
116
142
|
DON'T:
|
|
117
|
-
|
|
118
|
-
- [
|
|
119
|
-
- [
|
|
143
|
+
The output must respect every prohibition below:
|
|
144
|
+
- [Do not <error or mistake to prevent>]
|
|
145
|
+
- [Never <inappropriate language or approach>]
|
|
146
|
+
- [Do not <common pitfall to prevent>]
|
|
147
|
+
- [Do not <exceed a stated limit or cross a boundary>]
|
|
148
|
+
- [Add more as needed, each led by "Do not" or "Never". The negation must live in the item
|
|
149
|
+
itself — a bare noun phrase reads as an instruction to DO the very thing being forbidden.]
|
|
120
150
|
|
|
121
151
|
EXAMPLES:
|
|
122
|
-
[
|
|
123
|
-
|
|
124
|
-
|
|
152
|
+
[Optional — if no reference sample is needed, delete everything from this line through the
|
|
153
|
+
counter-example below.]
|
|
154
|
+
The examples below set the standard your output must meet. Match their format, tone,
|
|
155
|
+
structure, and level of detail.
|
|
156
|
+
|
|
157
|
+
Example 1 — produce output like this:
|
|
158
|
+
[Write the desired output in full — the actual text, not a description of it. If the user
|
|
159
|
+
supplied an approved sample or boilerplate, reproduce it here.]
|
|
160
|
+
|
|
161
|
+
Example 2 — also produce output like this:
|
|
162
|
+
[Optional — a second full example at the same quality bar. If one is enough, delete this
|
|
163
|
+
bracketed block along with the label line above it.]
|
|
164
|
+
|
|
165
|
+
Counter-example — do NOT produce output like this:
|
|
166
|
+
[Optional — a full counter-example of the failure mode, opening with a sentence naming it
|
|
167
|
+
unacceptable, e.g. "The following response would be unacceptable because it deflects blame:",
|
|
168
|
+
so the warning survives without its label. If not useful, delete this bracketed block along
|
|
169
|
+
with the label line above it.]
|
|
125
170
|
|
|
126
171
|
CONTEXT:
|
|
127
|
-
|
|
172
|
+
The background below describes the situation this task takes place in.
|
|
173
|
+
- [Optional — state each supplied background fact, constraint, situational factor, or
|
|
174
|
+
applicable standard as a complete sentence, one per line. Include only what the user supplied;
|
|
175
|
+
never invent one — if a needed fact is missing, leave a visible [you fill this in: <what is
|
|
176
|
+
needed>] placeholder instead of a guess. If the task needs no background, delete this
|
|
177
|
+
bracketed block along with the sentence above it.]
|
|
128
178
|
```
|
|
129
179
|
|
|
130
180
|
## Complete Example
|
|
@@ -134,35 +184,48 @@ CONTEXT:
|
|
|
134
184
|
|
|
135
185
|
### After TIDD-EC:
|
|
136
186
|
```
|
|
187
|
+
SOURCE MATERIAL:
|
|
188
|
+
"I ordered the ceramic serving set for my daughter's engagement party this Saturday
|
|
189
|
+
and it turned up in pieces. The box looked fine from the outside. I've been buying
|
|
190
|
+
from you for two years and this is the first time anything like this has happened,
|
|
191
|
+
but the timing could not be worse."
|
|
192
|
+
Use the material above as the content for the work described below.
|
|
193
|
+
|
|
137
194
|
TASK TYPE:
|
|
138
|
-
Customer Support Response
|
|
195
|
+
The category of task you are performing is: Customer Support Response.
|
|
139
196
|
|
|
140
197
|
INSTRUCTIONS:
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
198
|
+
Carry out the task as follows.
|
|
199
|
+
1. Acknowledge the customer's frustration and validate their concern.
|
|
200
|
+
2. Apologize for the inconvenience caused.
|
|
201
|
+
3. Explain what happened, in simple terms, if the cause is known.
|
|
202
|
+
4. Provide a concrete solution and the next steps you are taking.
|
|
203
|
+
5. State a specific timeline for resolution.
|
|
204
|
+
6. Offer a direct contact route for further support.
|
|
147
205
|
|
|
148
206
|
DO:
|
|
149
|
-
|
|
150
|
-
-
|
|
151
|
-
-
|
|
152
|
-
-
|
|
153
|
-
-
|
|
154
|
-
-
|
|
207
|
+
The output must satisfy every requirement below:
|
|
208
|
+
- Always use empathetic, professional language.
|
|
209
|
+
- Always address the customer by name.
|
|
210
|
+
- Always give specific action items with timeframes attached.
|
|
211
|
+
- Always include direct contact information for follow-up.
|
|
212
|
+
- Always express genuine concern for their experience.
|
|
213
|
+
- Keep the response between 150 and 250 words.
|
|
155
214
|
|
|
156
215
|
DON'T:
|
|
157
|
-
|
|
158
|
-
-
|
|
159
|
-
-
|
|
160
|
-
-
|
|
161
|
-
-
|
|
162
|
-
-
|
|
216
|
+
The output must respect every prohibition below:
|
|
217
|
+
- Do not make excuses or deflect blame onto the customer, a carrier, or a system.
|
|
218
|
+
- Never use template language that sounds robotic.
|
|
219
|
+
- Do not promise anything you cannot guarantee.
|
|
220
|
+
- Do not include technical jargon or internal system error codes.
|
|
221
|
+
- Never use passive voice to describe the failure (for example, "mistakes were made").
|
|
222
|
+
- Do not exceed 250 words, and do not write fewer than 150.
|
|
163
223
|
|
|
164
224
|
EXAMPLES:
|
|
165
|
-
|
|
225
|
+
The examples below set the standard your output must meet. Match their format, tone,
|
|
226
|
+
structure, and level of detail.
|
|
227
|
+
|
|
228
|
+
Example 1 — produce output like this:
|
|
166
229
|
"Dear Sarah, I'm truly sorry that your order arrived damaged. I understand how
|
|
167
230
|
frustrating this must be, especially since you needed it for this weekend's event.
|
|
168
231
|
This happened because of a packaging error in our warehouse. Here's what I'm doing
|
|
@@ -171,16 +234,20 @@ you'll have it by Friday 2 PM, (2) You'll receive a full refund for the original
|
|
|
171
234
|
order within 24 hours. If you have any concerns, please reach me directly at
|
|
172
235
|
sarah.smith@company.com or 555-1234. We value your business and will make this right."
|
|
173
236
|
|
|
174
|
-
|
|
237
|
+
Counter-example — do NOT produce output like this:
|
|
238
|
+
The following response would be unacceptable because it hides behind passive voice,
|
|
239
|
+
blames a system rather than taking responsibility, offers no remedy or timeline, and
|
|
240
|
+
redirects the customer to a ticket number instead of a person:
|
|
175
241
|
"We apologize for any inconvenience. Due to system errors, your order was damaged.
|
|
176
242
|
Please contact our support team for further assistance. Ticket #12345."
|
|
177
243
|
|
|
178
244
|
CONTEXT:
|
|
179
|
-
|
|
180
|
-
-
|
|
181
|
-
-
|
|
182
|
-
-
|
|
183
|
-
-
|
|
245
|
+
The background below describes the situation this task takes place in.
|
|
246
|
+
- The company is an e-commerce retailer specializing in home goods.
|
|
247
|
+
- The customer is a premium member who shops regularly.
|
|
248
|
+
- The customer received a damaged item that they needed for an event.
|
|
249
|
+
- Previous interactions have been generally positive, at a 4.5/5 satisfaction rating.
|
|
250
|
+
- Company policy allows a full refund plus a replacement for damaged items.
|
|
184
251
|
```
|
|
185
252
|
|
|
186
253
|
## Best Use Cases
|
|
@@ -311,7 +378,7 @@ CONTEXT:
|
|
|
311
378
|
|
|
312
379
|
**Good**:
|
|
313
380
|
- DO: "Use formal language, address customer by name, include specific metrics"
|
|
314
|
-
- DON'T: "
|
|
381
|
+
- DON'T: "Do not use contractions, do not include unverified information, and do not exceed 300 words"
|
|
315
382
|
|
|
316
383
|
### 2. Contradictory Instructions
|
|
317
384
|
**Bad**:
|
|
@@ -323,7 +390,7 @@ DON'T: Exceed 100 words
|
|
|
323
390
|
**Good**:
|
|
324
391
|
```
|
|
325
392
|
DO: Include top 3 key points with supporting data
|
|
326
|
-
DON'T:
|
|
393
|
+
DON'T: Do not include tangential information, and do not exceed 150 words
|
|
327
394
|
```
|
|
328
395
|
|
|
329
396
|
### 3. Missing Context
|
|
@@ -394,8 +461,8 @@ For simpler tasks that don't need all components:
|
|
|
394
461
|
```
|
|
395
462
|
TASK TYPE: [task]
|
|
396
463
|
INSTRUCTIONS: [steps]
|
|
397
|
-
DO: [requirements]
|
|
398
|
-
DON'T: [restrictions]
|
|
464
|
+
DO: [requirements, each led by "Always" or an imperative verb]
|
|
465
|
+
DON'T: [restrictions, each led by "Do not" or "Never" so the negation survives header stripping]
|
|
399
466
|
```
|
|
400
467
|
(Omit Examples and Context if not needed)
|
|
401
468
|
|
|
@@ -435,18 +502,29 @@ When applying TIDD-EC, verify:
|
|
|
435
502
|
- [ ] Context includes relevant constraints
|
|
436
503
|
- [ ] All components work together coherently
|
|
437
504
|
|
|
438
|
-
##
|
|
505
|
+
## Provenance
|
|
439
506
|
|
|
440
|
-
|
|
507
|
+
TIDD-EC has no verified originator and no academic basis. The full traceable source set is three items, honestly assessed:
|
|
441
508
|
|
|
442
|
-
1. **Mastering Prompt Engineering: A Guide to the CO-STAR and TIDD-EC Frameworks**
|
|
509
|
+
1. **Vivas.AI, "Mastering Prompt Engineering: A Guide to the CO-STAR and TIDD-EC Frameworks"** — Medium, 5 February 2024
|
|
443
510
|
- [https://vivasai01.medium.com/mastering-prompt-engineering-a-guide-to-the-co-star-and-tidd-ec-frameworks-3334588cb908](https://vivasai01.medium.com/mastering-prompt-engineering-a-guide-to-the-co-star-and-tidd-ec-frameworks-3334588cb908)
|
|
511
|
+
- *This is the origin, not corroboration of it.* Corporate account, no individual byline, no citations. Every later mention traces back here.
|
|
444
512
|
|
|
445
|
-
2. **
|
|
513
|
+
2. **GPT Teams, same title**
|
|
446
514
|
- [https://gptteams.ai/articles/mastering-prompt-engineering-a-guide-to-the-co-star-and-tidd-ec-frameworks](https://gptteams.ai/articles/mastering-prompt-engineering-a-guide-to-the-co-star-and-tidd-ec-frameworks)
|
|
515
|
+
- *Not independent.* Same title and content as (1), carrying a Vivas.AI-affiliated byline and pointing readers back to vivas.ai. A same-organization republication; it adds no evidentiary weight.
|
|
447
516
|
|
|
448
|
-
3. **In conversation with AI
|
|
517
|
+
3. **Hélène Sauvé, "In conversation with AI — when Prompt Engineering meets Linguistics"** — Scott Logic, 12 July 2024
|
|
449
518
|
- [https://blog.scottlogic.com/2024/07/12/when-prompt-engineering-meets-linguistics.html](https://blog.scottlogic.com/2024/07/12/when-prompt-engineering-meets-linguistics.html)
|
|
519
|
+
- *Passing mention only.* TIDD-EC appears in a single clause, and is expanded there **without the E and C**. Evidence the acronym circulated; not evidence of origin or efficacy.
|
|
520
|
+
|
|
521
|
+
**These are not "authoritative sources."** They are one origin post, one republication of it, and one one-line mention. The template below remains practically useful — explicit Do/Don't constraints are a sound prompting tactic independent of this acronym — but the acronym itself carries no authority.
|
|
522
|
+
|
|
523
|
+
**Correction:** an earlier version of this file said TIDD-EC was "originally documented alongside CO-STAR." That was misleading. CO-STAR is separately attributable to **GovTech Singapore's Data Science & AI team** (popularized by Sheila Teo). Teo's article does not mention TIDD-EC, and no GovTech or Teo source connects the two. The only link is that one Medium post happened to describe both frameworks in the same article — which is not shared provenance.
|
|
524
|
+
|
|
525
|
+
**Naming caution:** "Vivas.AI" above (a Chennai company) is unrelated to "Fabio Vivas" (fvivas.com), cited in `rise.md`. Do not merge them.
|
|
526
|
+
|
|
527
|
+
**Confusable:** exabytes.my documents **TID-EC** = Task, Input, Desired Output, Example, Context. Different acronym, different framework.
|
|
450
528
|
|
|
451
529
|
## Key Takeaways
|
|
452
530
|
|