gaslighting-engine 0.1.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.
Files changed (89) hide show
  1. package/.codex/prompts/gaslighting.md +30 -0
  2. package/.codex/skills/gaslighting/SKILL.md +96 -0
  3. package/.codex/skills/gaslighting/agents/openai.yaml +8 -0
  4. package/.codex/skills/gaslighting/references/GASLIGHTING_TEMPLATE.md +425 -0
  5. package/.codex/skills/gaslighting/references/HARDCORE_DISCIPLINE_TEMPLATE.md +425 -0
  6. package/.codex/skills/gaslighting/references/HOSPITAL_HOMEPAGE_EXAMPLE.md +119 -0
  7. package/.codex/skills/gaslighting/references/STACK_POLICY_TEMPLATE.md +64 -0
  8. package/.codex/skills/gaslighting/scripts/generate-gaslighting-docs.ts +3 -0
  9. package/LICENSE +21 -0
  10. package/README.md +200 -0
  11. package/dist/cli.js +118 -0
  12. package/dist/commands/agents.js +10 -0
  13. package/dist/commands/codexInstall.js +60 -0
  14. package/dist/commands/doctor.js +42 -0
  15. package/dist/commands/generate.js +4 -0
  16. package/dist/commands/init.js +27 -0
  17. package/dist/commands/skill.js +10 -0
  18. package/dist/commands/update.js +35 -0
  19. package/dist/core/analyze.js +132 -0
  20. package/dist/core/classifyProjectType.js +66 -0
  21. package/dist/core/content.js +125 -0
  22. package/dist/core/detectStackHints.js +34 -0
  23. package/dist/core/generateDocs.js +58 -0
  24. package/dist/core/generateGaslightingMarkdown.js +420 -0
  25. package/dist/core/generateOtherMarkdown.js +529 -0
  26. package/dist/core/generatePrdMarkdown.js +125 -0
  27. package/dist/index.js +3 -0
  28. package/dist/types.js +1 -0
  29. package/dist/utils/banner.js +49 -0
  30. package/dist/utils/date.js +6 -0
  31. package/dist/utils/file.js +24 -0
  32. package/dist/utils/logger.js +27 -0
  33. package/dist/utils/markdown.js +6 -0
  34. package/docs/codex-usage.md +58 -0
  35. package/docs/examples.md +22 -0
  36. package/docs/philosophy.md +17 -0
  37. package/docs/research.md +54 -0
  38. package/examples/ecommerce/.codex/prompts/gaslighting.md +30 -0
  39. package/examples/ecommerce/.codex/skills/gaslighting/SKILL.md +96 -0
  40. package/examples/ecommerce/.codex/skills/gaslighting/agents/openai.yaml +8 -0
  41. package/examples/ecommerce/.codex/skills/gaslighting/references/GASLIGHTING_TEMPLATE.md +425 -0
  42. package/examples/ecommerce/.codex/skills/gaslighting/references/HARDCORE_DISCIPLINE_TEMPLATE.md +425 -0
  43. package/examples/ecommerce/.codex/skills/gaslighting/references/HOSPITAL_HOMEPAGE_EXAMPLE.md +119 -0
  44. package/examples/ecommerce/.codex/skills/gaslighting/references/STACK_POLICY_TEMPLATE.md +64 -0
  45. package/examples/ecommerce/.codex/skills/gaslighting/scripts/generate-gaslighting-docs.ts +3 -0
  46. package/examples/ecommerce/AGENTS.md +47 -0
  47. package/examples/ecommerce/ASSUMPTIONS.md +146 -0
  48. package/examples/ecommerce/CODEX_PROMPT.md +34 -0
  49. package/examples/ecommerce/DECISION_LOG.md +95 -0
  50. package/examples/ecommerce/GASLIGHTING.md +429 -0
  51. package/examples/ecommerce/MEMORY.md +63 -0
  52. package/examples/ecommerce/MISSING_INFO.md +13 -0
  53. package/examples/ecommerce/PRD.md +115 -0
  54. package/examples/ecommerce/STACK_POLICY.md +64 -0
  55. package/examples/hospital-homepage/.codex/prompts/gaslighting.md +30 -0
  56. package/examples/hospital-homepage/.codex/skills/gaslighting/SKILL.md +96 -0
  57. package/examples/hospital-homepage/.codex/skills/gaslighting/agents/openai.yaml +8 -0
  58. package/examples/hospital-homepage/.codex/skills/gaslighting/references/GASLIGHTING_TEMPLATE.md +425 -0
  59. package/examples/hospital-homepage/.codex/skills/gaslighting/references/HARDCORE_DISCIPLINE_TEMPLATE.md +425 -0
  60. package/examples/hospital-homepage/.codex/skills/gaslighting/references/HOSPITAL_HOMEPAGE_EXAMPLE.md +119 -0
  61. package/examples/hospital-homepage/.codex/skills/gaslighting/references/STACK_POLICY_TEMPLATE.md +64 -0
  62. package/examples/hospital-homepage/.codex/skills/gaslighting/scripts/generate-gaslighting-docs.ts +3 -0
  63. package/examples/hospital-homepage/AGENTS.md +47 -0
  64. package/examples/hospital-homepage/ASSUMPTIONS.md +218 -0
  65. package/examples/hospital-homepage/CODEX_PROMPT.md +34 -0
  66. package/examples/hospital-homepage/DECISION_LOG.md +95 -0
  67. package/examples/hospital-homepage/GASLIGHTING.md +432 -0
  68. package/examples/hospital-homepage/MEMORY.md +66 -0
  69. package/examples/hospital-homepage/MISSING_INFO.md +13 -0
  70. package/examples/hospital-homepage/PRD.md +119 -0
  71. package/examples/hospital-homepage/STACK_POLICY.md +64 -0
  72. package/examples/landing-page/.codex/prompts/gaslighting.md +30 -0
  73. package/examples/landing-page/.codex/skills/gaslighting/SKILL.md +96 -0
  74. package/examples/landing-page/.codex/skills/gaslighting/agents/openai.yaml +8 -0
  75. package/examples/landing-page/.codex/skills/gaslighting/references/GASLIGHTING_TEMPLATE.md +425 -0
  76. package/examples/landing-page/.codex/skills/gaslighting/references/HARDCORE_DISCIPLINE_TEMPLATE.md +425 -0
  77. package/examples/landing-page/.codex/skills/gaslighting/references/HOSPITAL_HOMEPAGE_EXAMPLE.md +119 -0
  78. package/examples/landing-page/.codex/skills/gaslighting/references/STACK_POLICY_TEMPLATE.md +64 -0
  79. package/examples/landing-page/.codex/skills/gaslighting/scripts/generate-gaslighting-docs.ts +3 -0
  80. package/examples/landing-page/AGENTS.md +47 -0
  81. package/examples/landing-page/ASSUMPTIONS.md +146 -0
  82. package/examples/landing-page/CODEX_PROMPT.md +34 -0
  83. package/examples/landing-page/DECISION_LOG.md +95 -0
  84. package/examples/landing-page/GASLIGHTING.md +424 -0
  85. package/examples/landing-page/MEMORY.md +63 -0
  86. package/examples/landing-page/MISSING_INFO.md +13 -0
  87. package/examples/landing-page/PRD.md +103 -0
  88. package/examples/landing-page/STACK_POLICY.md +64 -0
  89. package/package.json +37 -0
@@ -0,0 +1,218 @@
1
+ # ASSUMPTIONS.md
2
+
3
+ ## Assumption: Hospital name Sample Clinic
4
+
5
+ Status: Active
6
+ Confidence: Medium
7
+ Impact: High
8
+
9
+ ### Why this assumption was made
10
+
11
+ Hospital name: Sample Clinic.
12
+
13
+ The user did not provide enough confirmed detail to treat this as fact.
14
+
15
+ ### What could make this wrong
16
+
17
+ The user provides a different business model, vertical, stack, audience, market, or production constraint.
18
+
19
+ ### What changes if this assumption is wrong
20
+
21
+ The PRD, page list, data model, implementation priorities, and copy may need to change.
22
+
23
+ ### How to replace this assumption
24
+
25
+ Provide confirmed information and run `gaslighting update "new information here"`.
26
+
27
+ ## Assumption: Hospital type dermatology/aesthetic clinic
28
+
29
+ Status: Active
30
+ Confidence: Medium
31
+ Impact: Medium
32
+
33
+ ### Why this assumption was made
34
+
35
+ Hospital type: dermatology/aesthetic clinic.
36
+
37
+ The user did not provide enough confirmed detail to treat this as fact.
38
+
39
+ ### What could make this wrong
40
+
41
+ The user provides a different business model, vertical, stack, audience, market, or production constraint.
42
+
43
+ ### What changes if this assumption is wrong
44
+
45
+ The PRD, page list, data model, implementation priorities, and copy may need to change.
46
+
47
+ ### How to replace this assumption
48
+
49
+ Provide confirmed information and run `gaslighting update "new information here"`.
50
+
51
+ ## Assumption: Location Seoul area
52
+
53
+ Status: Active
54
+ Confidence: Medium
55
+ Impact: Medium
56
+
57
+ ### Why this assumption was made
58
+
59
+ Location: Seoul area.
60
+
61
+ The user did not provide enough confirmed detail to treat this as fact.
62
+
63
+ ### What could make this wrong
64
+
65
+ The user provides a different business model, vertical, stack, audience, market, or production constraint.
66
+
67
+ ### What changes if this assumption is wrong
68
+
69
+ The PRD, page list, data model, implementation priorities, and copy may need to change.
70
+
71
+ ### How to replace this assumption
72
+
73
+ Provide confirmed information and run `gaslighting update "new information here"`.
74
+
75
+ ## Assumption: Main goal trust, consultation inquiries, reservations, local SEO, and mobile con
76
+
77
+ Status: Active
78
+ Confidence: Medium
79
+ Impact: Medium
80
+
81
+ ### Why this assumption was made
82
+
83
+ Main goal: trust, consultation inquiries, reservations, local SEO, and mobile contact clarity.
84
+
85
+ The user did not provide enough confirmed detail to treat this as fact.
86
+
87
+ ### What could make this wrong
88
+
89
+ The user provides a different business model, vertical, stack, audience, market, or production constraint.
90
+
91
+ ### What changes if this assumption is wrong
92
+
93
+ The PRD, page list, data model, implementation priorities, and copy may need to change.
94
+
95
+ ### How to replace this assumption
96
+
97
+ Provide confirmed information and run `gaslighting update "new information here"`.
98
+
99
+ ## Assumption: Admin dashboard is excluded from MVP unless requested later
100
+
101
+ Status: Active
102
+ Confidence: Medium
103
+ Impact: Medium
104
+
105
+ ### Why this assumption was made
106
+
107
+ Admin dashboard is excluded from MVP unless requested later.
108
+
109
+ The user did not provide enough confirmed detail to treat this as fact.
110
+
111
+ ### What could make this wrong
112
+
113
+ The user provides a different business model, vertical, stack, audience, market, or production constraint.
114
+
115
+ ### What changes if this assumption is wrong
116
+
117
+ The PRD, page list, data model, implementation priorities, and copy may need to change.
118
+
119
+ ### How to replace this assumption
120
+
121
+ Provide confirmed information and run `gaslighting update "new information here"`.
122
+
123
+ ## Assumption: Medical ad copy requires human review before production
124
+
125
+ Status: Active
126
+ Confidence: Medium
127
+ Impact: Medium
128
+
129
+ ### Why this assumption was made
130
+
131
+ Medical ad copy requires human review before production.
132
+
133
+ The user did not provide enough confirmed detail to treat this as fact.
134
+
135
+ ### What could make this wrong
136
+
137
+ The user provides a different business model, vertical, stack, audience, market, or production constraint.
138
+
139
+ ### What changes if this assumption is wrong
140
+
141
+ The PRD, page list, data model, implementation priorities, and copy may need to change.
142
+
143
+ ### How to replace this assumption
144
+
145
+ Provide confirmed information and run `gaslighting update "new information here"`.
146
+
147
+ ## Assumption: Use the default practical web stack unless the user later specifies otherwise
148
+
149
+ Status: Active
150
+ Confidence: Medium
151
+ Impact: Medium
152
+
153
+ ### Why this assumption was made
154
+
155
+ Use the default practical web stack unless the user later specifies otherwise.
156
+
157
+ The user did not provide enough confirmed detail to treat this as fact.
158
+
159
+ ### What could make this wrong
160
+
161
+ The user provides a different business model, vertical, stack, audience, market, or production constraint.
162
+
163
+ ### What changes if this assumption is wrong
164
+
165
+ The PRD, page list, data model, implementation priorities, and copy may need to change.
166
+
167
+ ### How to replace this assumption
168
+
169
+ Provide confirmed information and run `gaslighting update "new information here"`.
170
+
171
+ ## Assumption: Build an MVP that can be implemented locally without a SaaS backend for this gen
172
+
173
+ Status: Active
174
+ Confidence: Medium
175
+ Impact: Medium
176
+
177
+ ### Why this assumption was made
178
+
179
+ Build an MVP that can be implemented locally without a SaaS backend for this generator.
180
+
181
+ The user did not provide enough confirmed detail to treat this as fact.
182
+
183
+ ### What could make this wrong
184
+
185
+ The user provides a different business model, vertical, stack, audience, market, or production constraint.
186
+
187
+ ### What changes if this assumption is wrong
188
+
189
+ The PRD, page list, data model, implementation priorities, and copy may need to change.
190
+
191
+ ### How to replace this assumption
192
+
193
+ Provide confirmed information and run `gaslighting update "new information here"`.
194
+
195
+ ## Assumption: Treat unspecified brand/content details as temporary copy that must be human-rev
196
+
197
+ Status: Active
198
+ Confidence: Medium
199
+ Impact: Medium
200
+
201
+ ### Why this assumption was made
202
+
203
+ Treat unspecified brand/content details as temporary copy that must be human-reviewed before production.
204
+
205
+ The user did not provide enough confirmed detail to treat this as fact.
206
+
207
+ ### What could make this wrong
208
+
209
+ The user provides a different business model, vertical, stack, audience, market, or production constraint.
210
+
211
+ ### What changes if this assumption is wrong
212
+
213
+ The PRD, page list, data model, implementation priorities, and copy may need to change.
214
+
215
+ ### How to replace this assumption
216
+
217
+ Provide confirmed information and run `gaslighting update "new information here"`.
218
+
@@ -0,0 +1,34 @@
1
+ # CODEX_PROMPT.md
2
+
3
+ Copy and paste this into Codex:
4
+
5
+ ---
6
+
7
+ Read the following files before doing any work:
8
+
9
+ 1. `GASLIGHTING.md`
10
+ 2. `PRD.md`
11
+ 3. `STACK_POLICY.md`
12
+ 4. `MISSING_INFO.md`
13
+ 5. `ASSUMPTIONS.md`
14
+ 6. `DECISION_LOG.md`
15
+ 7. `AGENTS.md`
16
+ 8. `MEMORY.md`
17
+
18
+ Then implement the project MVP.
19
+
20
+ Rules:
21
+
22
+ - Do not shrink the scope.
23
+ - Do not leave TODOs instead of implementation.
24
+ - Do not implement only representative examples.
25
+ - Do not say "the rest follows the same pattern."
26
+ - Do not call scaffolding completion.
27
+ - Do not call placeholders implementation.
28
+ - Do not over-engineer.
29
+ - Do not forget the project purpose.
30
+ - If something is incomplete, declare it explicitly.
31
+
32
+ Before claiming completion, perform the self-audit in `GASLIGHTING.md`.
33
+
34
+ Proceed.
@@ -0,0 +1,95 @@
1
+ # DECISION_LOG.md
2
+
3
+ ## Decision: Initialize Gaslighting documents
4
+
5
+ Date: 2026-05-23
6
+
7
+ ### Decision
8
+
9
+ Generate strict Gaslighting-engine project-control documents for the request:
10
+
11
+ > I want to build a hospital website.
12
+
13
+ ### Reason
14
+
15
+ The project needs AI-agent discipline before implementation so the agent does not drift, shrink scope, leave TODOs, or fake completion.
16
+
17
+ ### Alternatives Considered
18
+
19
+ - Start coding without discipline documents.
20
+ - Ask the user a long list of questions before making progress.
21
+ - Use an LLM API to generate custom documents.
22
+
23
+ ### Why Alternatives Were Not Chosen
24
+
25
+ - Coding without control documents increases fake-completion risk.
26
+ - Most missing information can be assumed and documented.
27
+ - MVP must be deterministic and must not call an LLM API.
28
+
29
+ ### Risk
30
+
31
+ The initial project type or assumptions may be wrong.
32
+
33
+ ### Revisit When
34
+
35
+ The user provides confirmed business details, stack choices, scope changes, or production constraints.
36
+
37
+ ## Decision: Project type classification
38
+
39
+ Date: 2026-05-23
40
+
41
+ ### Decision
42
+
43
+ Classified project type as `hospital_homepage` with `medium` confidence.
44
+
45
+ ### Reason
46
+
47
+ Keyword-based classification is deterministic and enough for MVP.
48
+
49
+ ### Alternatives Considered
50
+
51
+ - Ask the user to classify the project manually.
52
+ - Use an external LLM API.
53
+
54
+ ### Why Alternatives Were Not Chosen
55
+
56
+ - Manual classification slows progress.
57
+ - External LLM APIs are excluded from MVP.
58
+
59
+ ### Risk
60
+
61
+ Low-confidence classification can create the wrong project-specific template.
62
+
63
+ ### Revisit When
64
+
65
+ The user says the project type is different or adds a clearer project description.
66
+
67
+ ## Decision: Stack policy
68
+
69
+ Date: 2026-05-23
70
+
71
+ ### Decision
72
+
73
+ No stack hints were provided. Use the default practical web stack unless the user later changes it.
74
+
75
+ ### Reason
76
+
77
+ Technology must serve the product purpose and avoid over-engineering.
78
+
79
+ ### Alternatives Considered
80
+
81
+ - Introduce advanced infrastructure up front.
82
+ - Leave stack completely undefined.
83
+
84
+ ### Why Alternatives Were Not Chosen
85
+
86
+ - Advanced infrastructure is forbidden by default.
87
+ - Undefined stack choices allow drift and inconsistent agent behavior.
88
+
89
+ ### Risk
90
+
91
+ Production needs may require a provider change later.
92
+
93
+ ### Revisit When
94
+
95
+ Deployment provider, database provider, storage, analytics, email, or payment requirements are confirmed.