gaslighting-engine 0.3.0 → 0.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.
Files changed (195) hide show
  1. package/README.md +147 -18
  2. package/desktop-dist/assets/index-BoI6eWtN.js +44 -0
  3. package/desktop-dist/assets/index-oFTvTTu8.css +1 -0
  4. package/desktop-dist/index.html +13 -0
  5. package/dist/agent-runtimes/permissions.js +34 -0
  6. package/dist/agent-runtimes/prompts.js +30 -0
  7. package/dist/agent-runtimes/registry.js +214 -0
  8. package/dist/agent-runtimes/types.js +1 -0
  9. package/dist/cli.js +145 -4
  10. package/dist/commands/agent.js +11 -0
  11. package/dist/commands/apiRun.js +32 -0
  12. package/dist/commands/cockpit.js +61 -7
  13. package/dist/commands/desktop.js +37 -0
  14. package/dist/commands/doctor.js +8 -1
  15. package/dist/commands/loop.js +64 -0
  16. package/dist/commands/mcp.js +43 -0
  17. package/dist/commands/skill.js +23 -0
  18. package/dist/core/cockpitHtml.js +4 -2
  19. package/dist/core/codexRuntime.js +44 -32
  20. package/dist/core/generateDocs.js +16 -10
  21. package/dist/core/generateOtherMarkdown.js +27 -27
  22. package/dist/core/generateStructuredDocs.js +405 -0
  23. package/dist/core/mcpRegistry.js +103 -0
  24. package/dist/core/missionLoop.js +179 -0
  25. package/dist/core/skillRegistry.js +62 -0
  26. package/dist/desktop/main.js +186 -0
  27. package/dist/desktop/preload.js +22 -0
  28. package/dist/utils/logger.js +1 -1
  29. package/dist/version.js +1 -1
  30. package/docs/codex-usage.md +36 -3
  31. package/examples/ecommerce/.agents/config.json +10 -0
  32. package/examples/ecommerce/.agents/mcp/manifest.json +5 -0
  33. package/examples/ecommerce/.agents/runtimes/claude.json +6 -0
  34. package/examples/ecommerce/.agents/runtimes/codex.json +6 -0
  35. package/examples/ecommerce/.agents/runtimes/kimi.json +6 -0
  36. package/examples/ecommerce/.agents/runtimes/local.json +6 -0
  37. package/examples/ecommerce/.agents/runtimes/openai_compatible.json +6 -0
  38. package/examples/ecommerce/.agents/runtimes/opencode.json +6 -0
  39. package/examples/ecommerce/.agents/runtimes/qwen.json +6 -0
  40. package/examples/ecommerce/.codex/prompts/gaslighting.md +9 -9
  41. package/examples/ecommerce/.gaslighting/AGENTS.md +9 -9
  42. package/examples/ecommerce/.gaslighting/AGENT_RUNTIME.md +1 -1
  43. package/examples/ecommerce/.gaslighting/CODEX_PROMPT.md +9 -9
  44. package/examples/ecommerce/.gaslighting/DECISION_LOG.md +1 -1
  45. package/examples/ecommerce/.gaslighting/GASLIGHTING.md +2 -2
  46. package/examples/ecommerce/.gaslighting/INDEX.md +39 -0
  47. package/examples/ecommerce/.gaslighting/MEMORY.md +1 -1
  48. package/examples/ecommerce/.gaslighting/PRD.md +1 -1
  49. package/examples/ecommerce/.gaslighting/PROJECT_CARE.md +1 -1
  50. package/examples/ecommerce/.gaslighting/checkpoints/latest.md +7 -0
  51. package/examples/ecommerce/.gaslighting/config.json +7 -0
  52. package/examples/ecommerce/.gaslighting/decisions/ADR-0001-stack.md +11 -0
  53. package/examples/ecommerce/.gaslighting/decisions/ADR-0002-agent-runtime.md +11 -0
  54. package/examples/ecommerce/.gaslighting/features/core-scope/DECISIONS.md +5 -0
  55. package/examples/ecommerce/.gaslighting/features/core-scope/FEATURE.md +7 -0
  56. package/examples/ecommerce/.gaslighting/features/core-scope/RISKS.md +5 -0
  57. package/examples/ecommerce/.gaslighting/features/core-scope/TASKS.md +18 -0
  58. package/examples/ecommerce/.gaslighting/loops/current-session.json +9 -0
  59. package/examples/ecommerce/.gaslighting/memory/OPEN_QUESTIONS.md +5 -0
  60. package/examples/ecommerce/.gaslighting/memory/PROJECT_MEMORY.md +5 -0
  61. package/examples/ecommerce/.gaslighting/memory/SESSION_LOG.md +3 -0
  62. package/examples/ecommerce/.gaslighting/mission/COMPLETION_STANDARD.md +11 -0
  63. package/examples/ecommerce/.gaslighting/mission/EXECUTION_RULES.md +20 -0
  64. package/examples/ecommerce/.gaslighting/mission/PROJECT_PURPOSE.md +20 -0
  65. package/examples/ecommerce/.gaslighting/operations/DEPLOYMENT.md +6 -0
  66. package/examples/ecommerce/.gaslighting/operations/DOMAIN.md +6 -0
  67. package/examples/ecommerce/.gaslighting/operations/ENV.md +5 -0
  68. package/examples/ecommerce/.gaslighting/operations/GIT.md +7 -0
  69. package/examples/ecommerce/.gaslighting/operations/GITHUB.md +7 -0
  70. package/examples/ecommerce/.gaslighting/operations/PROJECT_CARE.md +76 -0
  71. package/examples/ecommerce/.gaslighting/pages/admin-products/ACCEPTANCE.md +7 -0
  72. package/examples/ecommerce/.gaslighting/pages/admin-products/PAGE_PRD.md +15 -0
  73. package/examples/ecommerce/.gaslighting/pages/cart/ACCEPTANCE.md +7 -0
  74. package/examples/ecommerce/.gaslighting/pages/cart/PAGE_PRD.md +15 -0
  75. package/examples/ecommerce/.gaslighting/pages/checkout/ACCEPTANCE.md +7 -0
  76. package/examples/ecommerce/.gaslighting/pages/checkout/PAGE_PRD.md +15 -0
  77. package/examples/ecommerce/.gaslighting/pages/home/ACCEPTANCE.md +7 -0
  78. package/examples/ecommerce/.gaslighting/pages/home/PAGE_PRD.md +15 -0
  79. package/examples/ecommerce/.gaslighting/pages/my-orders/ACCEPTANCE.md +7 -0
  80. package/examples/ecommerce/.gaslighting/pages/my-orders/PAGE_PRD.md +15 -0
  81. package/examples/ecommerce/.gaslighting/pages/order-complete/ACCEPTANCE.md +7 -0
  82. package/examples/ecommerce/.gaslighting/pages/order-complete/PAGE_PRD.md +15 -0
  83. package/examples/ecommerce/.gaslighting/pages/product-detail/ACCEPTANCE.md +7 -0
  84. package/examples/ecommerce/.gaslighting/pages/product-detail/PAGE_PRD.md +15 -0
  85. package/examples/ecommerce/.gaslighting/pages/product-list/ACCEPTANCE.md +7 -0
  86. package/examples/ecommerce/.gaslighting/pages/product-list/PAGE_PRD.md +15 -0
  87. package/examples/ecommerce/.gaslighting/product/PAGE_MAP.md +11 -0
  88. package/examples/ecommerce/.gaslighting/product/PRD.md +115 -0
  89. package/examples/ecommerce/.gaslighting/product/USER_FLOWS.md +22 -0
  90. package/examples/ecommerce/.gaslighting/tasks/TASK-0001.md +17 -0
  91. package/examples/ecommerce/.gaslighting/verification/latest-report.md +3 -0
  92. package/examples/ecommerce/AGENTS.md +12 -10
  93. package/examples/hospital-homepage/.agents/config.json +10 -0
  94. package/examples/hospital-homepage/.agents/mcp/manifest.json +5 -0
  95. package/examples/hospital-homepage/.agents/runtimes/claude.json +6 -0
  96. package/examples/hospital-homepage/.agents/runtimes/codex.json +6 -0
  97. package/examples/hospital-homepage/.agents/runtimes/kimi.json +6 -0
  98. package/examples/hospital-homepage/.agents/runtimes/local.json +6 -0
  99. package/examples/hospital-homepage/.agents/runtimes/openai_compatible.json +6 -0
  100. package/examples/hospital-homepage/.agents/runtimes/opencode.json +6 -0
  101. package/examples/hospital-homepage/.agents/runtimes/qwen.json +6 -0
  102. package/examples/hospital-homepage/.codex/prompts/gaslighting.md +9 -9
  103. package/examples/hospital-homepage/.gaslighting/AGENTS.md +9 -9
  104. package/examples/hospital-homepage/.gaslighting/CODEX_PROMPT.md +9 -9
  105. package/examples/hospital-homepage/.gaslighting/INDEX.md +37 -0
  106. package/examples/hospital-homepage/.gaslighting/checkpoints/latest.md +7 -0
  107. package/examples/hospital-homepage/.gaslighting/config.json +7 -0
  108. package/examples/hospital-homepage/.gaslighting/decisions/ADR-0001-stack.md +11 -0
  109. package/examples/hospital-homepage/.gaslighting/decisions/ADR-0002-agent-runtime.md +11 -0
  110. package/examples/hospital-homepage/.gaslighting/features/core-scope/DECISIONS.md +5 -0
  111. package/examples/hospital-homepage/.gaslighting/features/core-scope/FEATURE.md +7 -0
  112. package/examples/hospital-homepage/.gaslighting/features/core-scope/RISKS.md +5 -0
  113. package/examples/hospital-homepage/.gaslighting/features/core-scope/TASKS.md +17 -0
  114. package/examples/hospital-homepage/.gaslighting/loops/current-session.json +9 -0
  115. package/examples/hospital-homepage/.gaslighting/memory/OPEN_QUESTIONS.md +5 -0
  116. package/examples/hospital-homepage/.gaslighting/memory/PROJECT_MEMORY.md +5 -0
  117. package/examples/hospital-homepage/.gaslighting/memory/SESSION_LOG.md +3 -0
  118. package/examples/hospital-homepage/.gaslighting/mission/COMPLETION_STANDARD.md +11 -0
  119. package/examples/hospital-homepage/.gaslighting/mission/EXECUTION_RULES.md +20 -0
  120. package/examples/hospital-homepage/.gaslighting/mission/PROJECT_PURPOSE.md +20 -0
  121. package/examples/hospital-homepage/.gaslighting/operations/DEPLOYMENT.md +6 -0
  122. package/examples/hospital-homepage/.gaslighting/operations/DOMAIN.md +6 -0
  123. package/examples/hospital-homepage/.gaslighting/operations/ENV.md +5 -0
  124. package/examples/hospital-homepage/.gaslighting/operations/GIT.md +7 -0
  125. package/examples/hospital-homepage/.gaslighting/operations/GITHUB.md +7 -0
  126. package/examples/hospital-homepage/.gaslighting/operations/PROJECT_CARE.md +76 -0
  127. package/examples/hospital-homepage/.gaslighting/pages/consultation-contact/ACCEPTANCE.md +7 -0
  128. package/examples/hospital-homepage/.gaslighting/pages/consultation-contact/PAGE_PRD.md +15 -0
  129. package/examples/hospital-homepage/.gaslighting/pages/departments-treatments/ACCEPTANCE.md +7 -0
  130. package/examples/hospital-homepage/.gaslighting/pages/departments-treatments/PAGE_PRD.md +15 -0
  131. package/examples/hospital-homepage/.gaslighting/pages/doctor-profiles/ACCEPTANCE.md +7 -0
  132. package/examples/hospital-homepage/.gaslighting/pages/doctor-profiles/PAGE_PRD.md +15 -0
  133. package/examples/hospital-homepage/.gaslighting/pages/home/ACCEPTANCE.md +7 -0
  134. package/examples/hospital-homepage/.gaslighting/pages/home/PAGE_PRD.md +15 -0
  135. package/examples/hospital-homepage/.gaslighting/pages/hospital-introduction/ACCEPTANCE.md +7 -0
  136. package/examples/hospital-homepage/.gaslighting/pages/hospital-introduction/PAGE_PRD.md +15 -0
  137. package/examples/hospital-homepage/.gaslighting/pages/location/ACCEPTANCE.md +7 -0
  138. package/examples/hospital-homepage/.gaslighting/pages/location/PAGE_PRD.md +15 -0
  139. package/examples/hospital-homepage/.gaslighting/pages/privacy-policy/ACCEPTANCE.md +7 -0
  140. package/examples/hospital-homepage/.gaslighting/pages/privacy-policy/PAGE_PRD.md +15 -0
  141. package/examples/hospital-homepage/.gaslighting/product/PAGE_MAP.md +9 -0
  142. package/examples/hospital-homepage/.gaslighting/product/PRD.md +119 -0
  143. package/examples/hospital-homepage/.gaslighting/product/USER_FLOWS.md +20 -0
  144. package/examples/hospital-homepage/.gaslighting/tasks/TASK-0001.md +17 -0
  145. package/examples/hospital-homepage/.gaslighting/verification/latest-report.md +3 -0
  146. package/examples/hospital-homepage/AGENTS.md +12 -10
  147. package/examples/landing-page/.agents/config.json +10 -0
  148. package/examples/landing-page/.agents/mcp/manifest.json +5 -0
  149. package/examples/landing-page/.agents/runtimes/claude.json +6 -0
  150. package/examples/landing-page/.agents/runtimes/codex.json +6 -0
  151. package/examples/landing-page/.agents/runtimes/kimi.json +6 -0
  152. package/examples/landing-page/.agents/runtimes/local.json +6 -0
  153. package/examples/landing-page/.agents/runtimes/openai_compatible.json +6 -0
  154. package/examples/landing-page/.agents/runtimes/opencode.json +6 -0
  155. package/examples/landing-page/.agents/runtimes/qwen.json +6 -0
  156. package/examples/landing-page/.codex/prompts/gaslighting.md +9 -9
  157. package/examples/landing-page/.gaslighting/AGENTS.md +9 -9
  158. package/examples/landing-page/.gaslighting/AGENT_RUNTIME.md +1 -1
  159. package/examples/landing-page/.gaslighting/CODEX_PROMPT.md +9 -9
  160. package/examples/landing-page/.gaslighting/DECISION_LOG.md +1 -1
  161. package/examples/landing-page/.gaslighting/GASLIGHTING.md +2 -2
  162. package/examples/landing-page/.gaslighting/INDEX.md +31 -0
  163. package/examples/landing-page/.gaslighting/MEMORY.md +1 -1
  164. package/examples/landing-page/.gaslighting/PRD.md +1 -1
  165. package/examples/landing-page/.gaslighting/PROJECT_CARE.md +1 -1
  166. package/examples/landing-page/.gaslighting/checkpoints/latest.md +7 -0
  167. package/examples/landing-page/.gaslighting/config.json +7 -0
  168. package/examples/landing-page/.gaslighting/decisions/ADR-0001-stack.md +11 -0
  169. package/examples/landing-page/.gaslighting/decisions/ADR-0002-agent-runtime.md +11 -0
  170. package/examples/landing-page/.gaslighting/features/core-scope/DECISIONS.md +5 -0
  171. package/examples/landing-page/.gaslighting/features/core-scope/FEATURE.md +7 -0
  172. package/examples/landing-page/.gaslighting/features/core-scope/RISKS.md +5 -0
  173. package/examples/landing-page/.gaslighting/features/core-scope/TASKS.md +11 -0
  174. package/examples/landing-page/.gaslighting/loops/current-session.json +9 -0
  175. package/examples/landing-page/.gaslighting/memory/OPEN_QUESTIONS.md +5 -0
  176. package/examples/landing-page/.gaslighting/memory/PROJECT_MEMORY.md +5 -0
  177. package/examples/landing-page/.gaslighting/memory/SESSION_LOG.md +3 -0
  178. package/examples/landing-page/.gaslighting/mission/COMPLETION_STANDARD.md +11 -0
  179. package/examples/landing-page/.gaslighting/mission/EXECUTION_RULES.md +20 -0
  180. package/examples/landing-page/.gaslighting/mission/PROJECT_PURPOSE.md +19 -0
  181. package/examples/landing-page/.gaslighting/operations/DEPLOYMENT.md +6 -0
  182. package/examples/landing-page/.gaslighting/operations/DOMAIN.md +6 -0
  183. package/examples/landing-page/.gaslighting/operations/ENV.md +5 -0
  184. package/examples/landing-page/.gaslighting/operations/GIT.md +7 -0
  185. package/examples/landing-page/.gaslighting/operations/GITHUB.md +7 -0
  186. package/examples/landing-page/.gaslighting/operations/PROJECT_CARE.md +75 -0
  187. package/examples/landing-page/.gaslighting/pages/single-landing-page-with-hero-problem-solution-benefits-social-p/ACCEPTANCE.md +7 -0
  188. package/examples/landing-page/.gaslighting/pages/single-landing-page-with-hero-problem-solution-benefits-social-p/PAGE_PRD.md +15 -0
  189. package/examples/landing-page/.gaslighting/product/PAGE_MAP.md +3 -0
  190. package/examples/landing-page/.gaslighting/product/PRD.md +103 -0
  191. package/examples/landing-page/.gaslighting/product/USER_FLOWS.md +14 -0
  192. package/examples/landing-page/.gaslighting/tasks/TASK-0001.md +17 -0
  193. package/examples/landing-page/.gaslighting/verification/latest-report.md +3 -0
  194. package/examples/landing-page/AGENTS.md +12 -10
  195. package/package.json +22 -5
package/README.md CHANGED
@@ -22,29 +22,27 @@ They say "the rest follows the same pattern."
22
22
 
23
23
  Gaslighting-engine is a strict project-discipline generator that stops this behavior.
24
24
 
25
- It generates:
26
-
27
- - `.gaslighting/GASLIGHTING.md`
28
- - `.gaslighting/PRD.md`
29
- - `.gaslighting/ASSUMPTIONS.md`
30
- - `.gaslighting/MISSING_INFO.md`
31
- - `.gaslighting/DECISION_LOG.md`
32
- - `.gaslighting/MEMORY.md`
33
- - `.gaslighting/AGENT_RUNTIME.md`
34
- - `.gaslighting/STACK_POLICY.md`
35
- - `.gaslighting/PROJECT_CARE.md`
36
- - `AGENTS.md`
37
- - `.gaslighting/CODEX_PROMPT.md`
38
- - `.codex/prompts/gaslighting.md`
39
- - Codex Skill files
25
+ It now has two layers:
26
+
27
+ - CLI discipline generator
28
+ - Codex-style local Mission Control desktop app
29
+
30
+ It writes the heavy project-control system under `.gaslighting/`, keeps root `AGENTS.md` short, and uses `.agents/` as the shared source-of-truth for skills, MCP definitions, prompts, and runtime config.
40
31
 
41
32
  ## Quick Start
42
33
 
43
34
  ```bash
44
- npx gaslighting-engine@latest start "I want to build a hospital website."
35
+ npx gaslighting-engine@latest desktop "I want to build a hospital website."
45
36
  ```
46
37
 
47
- This generates the discipline documents, opens the local Mission Control GUI, and prepares a Codex launch command.
38
+ This opens Gaslighting Mission Control, where you can review the mission, choose the agent runtime, select permission mode, generate the structured docs, and start the agent.
39
+
40
+ Headless CLI flow:
41
+
42
+ ```bash
43
+ npx gaslighting-engine@latest "I want to build a hospital website."
44
+ npx gaslighting-engine@latest run "I want to build a hospital website."
45
+ ```
48
46
 
49
47
  Short aliases after global install or local link:
50
48
 
@@ -87,9 +85,20 @@ gaslighting init "I want to build a hospital website."
87
85
  gaslighting-engine generate "Build an ecommerce MVP."
88
86
  gaslighting-engine update "The hospital is actually an OB-GYN clinic, not dermatology."
89
87
  gaslighting-engine doctor
88
+ gaslighting-engine desktop "Build a hospital homepage"
90
89
  gaslighting-engine start "Build a hospital homepage"
91
90
  gaslighting-engine cockpit
92
91
  gaslighting-engine run "Build a hospital homepage"
92
+ gaslighting-engine agent list
93
+ gaslighting-engine loop start "Build a hospital homepage"
94
+ gaslighting-engine loop status
95
+ gaslighting-engine loop resume
96
+ gaslighting-engine loop stop
97
+ gaslighting-engine mcp search github
98
+ gaslighting-engine mcp install github --runtime codex
99
+ gaslighting-engine mcp list
100
+ gaslighting-engine skill create hospital-homepage
101
+ gaslighting-engine skill install hospital-homepage --runtime codex
93
102
  gaslighting-engine upgrade
94
103
  gaslighting-engine codex-install
95
104
  gaslighting-engine codex-doctor
@@ -105,7 +114,58 @@ Gaslighting-engine keeps project-control documents in `.gaslighting/` by default
105
114
 
106
115
  Only root `AGENTS.md` is written at the top level because Codex expects project guidance there. It is a thin pointer into `.gaslighting/`.
107
116
 
108
- ## Mission Control
117
+ ```txt
118
+ .gaslighting/
119
+ INDEX.md
120
+ mission/
121
+ product/
122
+ pages/
123
+ features/
124
+ operations/
125
+ decisions/
126
+ tasks/
127
+ loops/
128
+ verification/
129
+ memory/
130
+
131
+ .agents/
132
+ config.json
133
+ skills/
134
+ prompts/
135
+ mcp/
136
+ runtimes/
137
+ ```
138
+
139
+ Runtime-specific files such as `.codex/skills`, `.codex/prompts`, and `.codex/config.toml` are exports from `.agents/`.
140
+
141
+ ## Desktop Mission Control
142
+
143
+ ```bash
144
+ npx gaslighting-engine@latest desktop "I want to build a hospital website."
145
+ ```
146
+
147
+ Mission Control is an Electron app with a Codex-style project surface:
148
+
149
+ - project request input
150
+ - generated mission and PRD preview
151
+ - runtime selector: Codex, Claude Code, Qwen Code, Kimi-compatible, OpenCode, OpenAI-compatible, local
152
+ - model picker when the runtime supports it
153
+ - permission mode selector
154
+ - Mission Loop toggle
155
+ - Git/GitHub/domain/deploy/env health panel
156
+ - MCP search/install panel
157
+ - shared skill create/install panel
158
+ - integrated terminal/log panel
159
+
160
+ Permission modes:
161
+
162
+ - `ask_each_task`: ask before each task and sensitive operation
163
+ - `auto_review`: default; normal work proceeds, sensitive operations require approval
164
+ - `full_autonomy`: run without approval, still log checkpoints and avoid leaking secrets
165
+
166
+ Mission Loop is OFF by default. When enabled, it runs task by task, writes checkpoints, records iteration logs, and refuses to mark failed verification as complete.
167
+
168
+ ## Legacy Web Cockpit
109
169
 
110
170
  Mission Control is the Codex-first GUI agent surface:
111
171
 
@@ -122,6 +182,20 @@ It shows:
122
182
  - Codex runtime args
123
183
  - Start Codex action
124
184
 
185
+ By default, `Start Codex` closes the local cockpit server and continues Codex in the same terminal that launched Mission Control. This keeps Cursor, Warp, Windows Terminal, or any other terminal flow intact.
186
+
187
+ If you explicitly want a separate terminal, add:
188
+
189
+ ```bash
190
+ npx gaslighting-engine@latest start "I want to build a hospital website." --new-terminal
191
+ ```
192
+
193
+ To customize Codex flags, use:
194
+
195
+ ```bash
196
+ npx gaslighting-engine@latest start "I want to build a hospital website." --codex-args="--search --dangerously-bypass-approvals-and-sandbox"
197
+ ```
198
+
125
199
  Open it for an existing project:
126
200
 
127
201
  ```bash
@@ -134,6 +208,61 @@ Run without the GUI:
134
208
  npx gaslighting-engine@latest run "I want to build a hospital website."
135
209
  ```
136
210
 
211
+ ## Agent Runtimes
212
+
213
+ Check local runtime availability:
214
+
215
+ ```bash
216
+ npx gaslighting-engine@latest agent list
217
+ ```
218
+
219
+ The runtime abstraction separates model switching from long-running loops.
220
+
221
+ - Codex, Claude Code, Qwen Code, and OpenCode use their own CLI model settings.
222
+ - Kimi can be used through compatible CLI or OpenAI-compatible flows.
223
+ - OpenAI-compatible direct mode uses `OPENAI_COMPATIBLE_API_KEY`, `OPENAI_API_KEY`, or `KIMI_API_KEY`.
224
+ - Local mode expects `ollama`.
225
+
226
+ ## Mission Loop
227
+
228
+ ```bash
229
+ npx gaslighting-engine@latest loop start "Build a hospital homepage"
230
+ npx gaslighting-engine@latest loop status
231
+ npx gaslighting-engine@latest loop resume
232
+ npx gaslighting-engine@latest loop stop
233
+ ```
234
+
235
+ Loop state is stored in:
236
+
237
+ ```txt
238
+ .gaslighting/tasks/
239
+ .gaslighting/loops/
240
+ .gaslighting/checkpoints/
241
+ .gaslighting/verification/
242
+ ```
243
+
244
+ The loop does not replace judgment. It gives the agent a repeatable task runner with checkpoint memory and verification gates.
245
+
246
+ ## MCP And Skills
247
+
248
+ Search and install MCP definitions:
249
+
250
+ ```bash
251
+ npx gaslighting-engine@latest mcp search github
252
+ npx gaslighting-engine@latest mcp install github --runtime codex
253
+ npx gaslighting-engine@latest mcp doctor
254
+ ```
255
+
256
+ Create a shared project skill and export it to Codex:
257
+
258
+ ```bash
259
+ npx gaslighting-engine@latest skill create hospital-homepage
260
+ npx gaslighting-engine@latest skill install hospital-homepage --runtime codex
261
+ npx gaslighting-engine@latest skill doctor
262
+ ```
263
+
264
+ Shared source files live in `.agents/`. Runtime exports are generated from there.
265
+
137
266
  ## Project Care
138
267
 
139
268
  Gaslighting-engine also writes `.gaslighting/PROJECT_CARE.md`.