gaslighting-engine 0.2.1 → 0.3.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/.agents/prompts/gaslighting.md +4 -1
- package/.agents/skills/gaslighting/SKILL.md +12 -1
- package/.codex/prompts/gaslighting.md +4 -1
- package/.codex/skills/gaslighting/SKILL.md +12 -1
- package/README.md +46 -3
- package/dist/cli.js +48 -1
- package/dist/commands/cockpit.js +174 -0
- package/dist/commands/codexInstall.js +3 -2
- package/dist/commands/doctor.js +1 -0
- package/dist/commands/upgrade.js +27 -0
- package/dist/core/cockpitHtml.js +596 -0
- package/dist/core/codexRuntime.js +74 -0
- package/dist/core/generateDocs.js +5 -3
- package/dist/core/generateOtherMarkdown.js +84 -4
- package/dist/index.js +1 -1
- package/dist/utils/logger.js +1 -1
- package/dist/utils/updateCheck.js +1 -2
- package/dist/version.js +1 -1
- package/docs/codex-usage.md +24 -4
- package/docs/examples.md +4 -0
- package/examples/ecommerce/.codex/prompts/gaslighting.md +4 -1
- package/examples/ecommerce/.codex/skills/gaslighting/SKILL.md +12 -1
- package/examples/ecommerce/.gaslighting/AGENTS.md +3 -1
- package/examples/ecommerce/.gaslighting/AGENT_RUNTIME.md +54 -0
- package/examples/ecommerce/.gaslighting/CODEX_PROMPT.md +8 -1
- package/examples/ecommerce/AGENTS.md +3 -2
- package/examples/hospital-homepage/.codex/prompts/gaslighting.md +4 -1
- package/examples/hospital-homepage/.codex/skills/gaslighting/SKILL.md +12 -1
- package/examples/hospital-homepage/.gaslighting/AGENTS.md +3 -1
- package/examples/hospital-homepage/.gaslighting/AGENT_RUNTIME.md +54 -0
- package/examples/hospital-homepage/.gaslighting/CODEX_PROMPT.md +8 -1
- package/examples/hospital-homepage/AGENTS.md +3 -2
- package/examples/landing-page/.codex/prompts/gaslighting.md +4 -1
- package/examples/landing-page/.codex/skills/gaslighting/SKILL.md +12 -1
- package/examples/landing-page/.gaslighting/AGENTS.md +3 -1
- package/examples/landing-page/.gaslighting/AGENT_RUNTIME.md +54 -0
- package/examples/landing-page/.gaslighting/CODEX_PROMPT.md +8 -1
- package/examples/landing-page/AGENTS.md +3 -2
- package/package.json +1 -1
|
@@ -2,7 +2,7 @@ import { analyze } from "./analyze.js";
|
|
|
2
2
|
import { generateGaslightingMarkdown } from "./generateGaslightingMarkdown.js";
|
|
3
3
|
import { generatePrdMarkdown } from "./generatePrdMarkdown.js";
|
|
4
4
|
import { generateProjectCareMarkdown } from "./projectCare.js";
|
|
5
|
-
import { generateAgentsMarkdown, generateAssumptionsMarkdown, generateCodexPromptMarkdown, generateCodexSlashPromptMarkdown, generateDecisionLogMarkdown, generateMemoryMarkdown, generateMissingInfoMarkdown, generateSkillMarkdown, generateSkillOpenAiYaml, generateSkillReferenceDocs, generateStackPolicyMarkdown, } from "./generateOtherMarkdown.js";
|
|
5
|
+
import { generateAgentsMarkdown, generateAgentRuntimeMarkdown, generateAssumptionsMarkdown, generateCodexPromptMarkdown, generateCodexSlashPromptMarkdown, generateDecisionLogMarkdown, generateMemoryMarkdown, generateMissingInfoMarkdown, generateSkillMarkdown, generateSkillOpenAiYaml, generateSkillReferenceDocs, generateStackPolicyMarkdown, } from "./generateOtherMarkdown.js";
|
|
6
6
|
const disciplineDir = ".gaslighting";
|
|
7
7
|
export function generateDocs(input, root = process.cwd()) {
|
|
8
8
|
const normalized = {
|
|
@@ -18,6 +18,7 @@ export function generateDocs(input, root = process.cwd()) {
|
|
|
18
18
|
{ filename: `${disciplineDir}/MISSING_INFO.md`, content: generateMissingInfoMarkdown(analysis) },
|
|
19
19
|
{ filename: `${disciplineDir}/DECISION_LOG.md`, content: generateDecisionLogMarkdown(normalized, analysis) },
|
|
20
20
|
{ filename: `${disciplineDir}/MEMORY.md`, content: generateMemoryMarkdown(normalized, analysis) },
|
|
21
|
+
{ filename: `${disciplineDir}/AGENT_RUNTIME.md`, content: generateAgentRuntimeMarkdown(normalized, analysis) },
|
|
21
22
|
{ filename: `${disciplineDir}/STACK_POLICY.md`, content: generateStackPolicyMarkdown(analysis) },
|
|
22
23
|
{ filename: `${disciplineDir}/PROJECT_CARE.md`, content: generateProjectCareMarkdown(normalized, analysis, root) },
|
|
23
24
|
{ filename: `${disciplineDir}/AGENTS.md`, content: generateAgentsMarkdown() },
|
|
@@ -88,8 +89,9 @@ Before doing any work, read these files in order:
|
|
|
88
89
|
5. \`.gaslighting/ASSUMPTIONS.md\`
|
|
89
90
|
6. \`.gaslighting/DECISION_LOG.md\`
|
|
90
91
|
7. \`.gaslighting/MEMORY.md\`
|
|
91
|
-
8. \`.gaslighting/
|
|
92
|
-
9. \`.gaslighting/
|
|
92
|
+
8. \`.gaslighting/AGENT_RUNTIME.md\`
|
|
93
|
+
9. \`.gaslighting/PROJECT_CARE.md\`
|
|
94
|
+
10. \`.gaslighting/AGENTS.md\`
|
|
93
95
|
|
|
94
96
|
Do not reduce scope.
|
|
95
97
|
|
|
@@ -223,7 +223,8 @@ Before doing any work, read these files in order:
|
|
|
223
223
|
5. \`.gaslighting/ASSUMPTIONS.md\`
|
|
224
224
|
6. \`.gaslighting/DECISION_LOG.md\`
|
|
225
225
|
7. \`.gaslighting/MEMORY.md\`
|
|
226
|
-
8. \`.gaslighting/
|
|
226
|
+
8. \`.gaslighting/AGENT_RUNTIME.md\`
|
|
227
|
+
9. \`.gaslighting/PROJECT_CARE.md\`
|
|
227
228
|
|
|
228
229
|
## Prime Directive
|
|
229
230
|
|
|
@@ -253,6 +254,7 @@ A task is complete only when:
|
|
|
253
254
|
- New assumptions are documented.
|
|
254
255
|
- New technical decisions are recorded.
|
|
255
256
|
- Stable project facts are recorded in \`.gaslighting/MEMORY.md\`.
|
|
257
|
+
- Runtime execution rules are preserved in \`.gaslighting/AGENT_RUNTIME.md\`.
|
|
256
258
|
- Operational risks are recorded in \`.gaslighting/PROJECT_CARE.md\`.
|
|
257
259
|
- The result does not contradict \`.gaslighting/GASLIGHTING.md\`.
|
|
258
260
|
|
|
@@ -322,6 +324,63 @@ When a memory becomes wrong, do not silently delete it. Mark it outdated and app
|
|
|
322
324
|
${bullets(analysis.assumptions)}
|
|
323
325
|
`;
|
|
324
326
|
}
|
|
327
|
+
export function generateAgentRuntimeMarkdown(input, analysis) {
|
|
328
|
+
return `# AGENT_RUNTIME.md
|
|
329
|
+
|
|
330
|
+
This file defines how Codex must operate after Gaslighting-engine prepares the project.
|
|
331
|
+
|
|
332
|
+
It is not a suggestion file.
|
|
333
|
+
|
|
334
|
+
It is the runtime loop.
|
|
335
|
+
|
|
336
|
+
## Mission
|
|
337
|
+
|
|
338
|
+
- Original request: ${input.rawUserRequest}
|
|
339
|
+
- Project type: ${analysis.projectType}
|
|
340
|
+
- Classification confidence: ${analysis.confidence}
|
|
341
|
+
- Runtime stance: Codex-first, full-scope, no fake completion.
|
|
342
|
+
|
|
343
|
+
## Required Loop
|
|
344
|
+
|
|
345
|
+
1. Read the control files before implementation.
|
|
346
|
+
2. Restate the project purpose in one short paragraph.
|
|
347
|
+
3. Convert the PRD into a concrete task checklist.
|
|
348
|
+
4. Implement the checklist systematically.
|
|
349
|
+
5. Use scripts or structured data for repetitive work.
|
|
350
|
+
6. Verify the result with build, tests, lint, browser checks, or direct inspection as appropriate.
|
|
351
|
+
7. Update \`.gaslighting/DECISION_LOG.md\` when a product or technical decision changes.
|
|
352
|
+
8. Update \`.gaslighting/MISSING_INFO.md\` when missing information is discovered or resolved.
|
|
353
|
+
9. Update \`.gaslighting/MEMORY.md\` when stable project facts are learned.
|
|
354
|
+
10. Update \`.gaslighting/PROJECT_CARE.md\` when GitHub, domain, deployment, env, analytics, email, or launch ownership changes.
|
|
355
|
+
|
|
356
|
+
## Agent Rules
|
|
357
|
+
|
|
358
|
+
- Do not ask the user for non-blocking information before starting work.
|
|
359
|
+
- Do make a reasonable temporary assumption, document it, and continue.
|
|
360
|
+
- Do not create only the visible surface and ignore operational details.
|
|
361
|
+
- Do not stop at a plan when implementation was requested.
|
|
362
|
+
- Do not call a scaffold complete.
|
|
363
|
+
- Do not call TODO comments implementation.
|
|
364
|
+
- Do not call examples full coverage.
|
|
365
|
+
- Do not hide risk behind confident wording.
|
|
366
|
+
- Do not over-engineer to look sophisticated.
|
|
367
|
+
- Do not under-deliver because the work is repetitive.
|
|
368
|
+
|
|
369
|
+
## Codex Execution Contract
|
|
370
|
+
|
|
371
|
+
Before claiming completion, Codex must be able to answer:
|
|
372
|
+
|
|
373
|
+
- What exact requested scope was completed?
|
|
374
|
+
- What exact files changed?
|
|
375
|
+
- What verification was run?
|
|
376
|
+
- What assumptions are still active?
|
|
377
|
+
- What missing information remains?
|
|
378
|
+
- What care risks remain?
|
|
379
|
+
- Is anything incomplete?
|
|
380
|
+
|
|
381
|
+
If anything is incomplete, use the failure declaration protocol in \`.gaslighting/GASLIGHTING.md\`.
|
|
382
|
+
`;
|
|
383
|
+
}
|
|
325
384
|
export function generateSkillMarkdown() {
|
|
326
385
|
return `---
|
|
327
386
|
name: gaslighting
|
|
@@ -348,7 +407,8 @@ Instead:
|
|
|
348
407
|
10. Generate \`.gaslighting/DECISION_LOG.md\`.
|
|
349
408
|
11. Generate \`.gaslighting/STACK_POLICY.md\`.
|
|
350
409
|
12. Generate or update root \`AGENTS.md\`.
|
|
351
|
-
13. Generate \`.gaslighting/
|
|
410
|
+
13. Generate \`.gaslighting/AGENT_RUNTIME.md\`.
|
|
411
|
+
14. Generate \`.gaslighting/PROJECT_CARE.md\`.
|
|
352
412
|
|
|
353
413
|
## Hardcore Discipline Rule
|
|
354
414
|
|
|
@@ -417,6 +477,8 @@ Keep main project-control files in \`.gaslighting/\` and keep only the Codex poi
|
|
|
417
477
|
|
|
418
478
|
Use \`.gaslighting/PROJECT_CARE.md\` to track Git/GitHub/domain/deployment/launch risks without blocking implementation.
|
|
419
479
|
|
|
480
|
+
Use \`.gaslighting/AGENT_RUNTIME.md\` to define the execution loop Codex must follow after the docs are generated.
|
|
481
|
+
|
|
420
482
|
Do not only explain.
|
|
421
483
|
|
|
422
484
|
Do not produce a plan without files.
|
|
@@ -424,6 +486,14 @@ Do not produce a plan without files.
|
|
|
424
486
|
Do not say what should be done.
|
|
425
487
|
|
|
426
488
|
Generate the actual project discipline documents.
|
|
489
|
+
|
|
490
|
+
## Update Rule
|
|
491
|
+
|
|
492
|
+
When the user asks how to update this Gaslighting Codex install, give the simple command:
|
|
493
|
+
|
|
494
|
+
\`\`\`bash
|
|
495
|
+
npx gaslighting-engine@latest upgrade
|
|
496
|
+
\`\`\`
|
|
427
497
|
`;
|
|
428
498
|
}
|
|
429
499
|
export function generateSkillOpenAiYaml() {
|
|
@@ -454,7 +524,8 @@ Read the following files before doing any work:
|
|
|
454
524
|
6. \`.gaslighting/DECISION_LOG.md\`
|
|
455
525
|
7. \`AGENTS.md\`
|
|
456
526
|
8. \`.gaslighting/MEMORY.md\`
|
|
457
|
-
9. \`.gaslighting/
|
|
527
|
+
9. \`.gaslighting/AGENT_RUNTIME.md\`
|
|
528
|
+
10. \`.gaslighting/PROJECT_CARE.md\`
|
|
458
529
|
|
|
459
530
|
Then implement the project MVP.
|
|
460
531
|
|
|
@@ -472,6 +543,12 @@ Rules:
|
|
|
472
543
|
|
|
473
544
|
Before claiming completion, perform the self-audit in \`.gaslighting/GASLIGHTING.md\`.
|
|
474
545
|
|
|
546
|
+
To refresh the Codex skill files later, run:
|
|
547
|
+
|
|
548
|
+
\`\`\`bash
|
|
549
|
+
npx gaslighting-engine@latest upgrade
|
|
550
|
+
\`\`\`
|
|
551
|
+
|
|
475
552
|
Proceed.
|
|
476
553
|
`;
|
|
477
554
|
}
|
|
@@ -488,7 +565,8 @@ Read the Gaslighting-engine project-control files before doing any work:
|
|
|
488
565
|
6. \`.gaslighting/DECISION_LOG.md\`
|
|
489
566
|
7. \`AGENTS.md\`
|
|
490
567
|
8. \`.gaslighting/MEMORY.md\`
|
|
491
|
-
9. \`.gaslighting/
|
|
568
|
+
9. \`.gaslighting/AGENT_RUNTIME.md\`
|
|
569
|
+
10. \`.gaslighting/PROJECT_CARE.md\`
|
|
492
570
|
|
|
493
571
|
Then execute the user's requested implementation.
|
|
494
572
|
|
|
@@ -508,6 +586,8 @@ Rules:
|
|
|
508
586
|
- If something is incomplete, declare it explicitly.
|
|
509
587
|
|
|
510
588
|
Before claiming completion, perform the self-audit in \`.gaslighting/GASLIGHTING.md\`.
|
|
589
|
+
|
|
590
|
+
To refresh this Gaslighting Codex install later, run \`npx gaslighting-engine@latest upgrade\`.
|
|
511
591
|
`;
|
|
512
592
|
}
|
|
513
593
|
export function generateSkillReferenceDocs() {
|
package/dist/index.js
CHANGED
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
import { buildCli, normalizeDefaultInitArgv } from "./cli.js";
|
|
3
3
|
import { notifyIfUpdateAvailable } from "./utils/updateCheck.js";
|
|
4
4
|
await notifyIfUpdateAvailable(process.argv);
|
|
5
|
-
buildCli().
|
|
5
|
+
await buildCli().parseAsync(normalizeDefaultInitArgv(process.argv));
|
package/dist/utils/logger.js
CHANGED
|
@@ -31,5 +31,5 @@ export function printSummary(analysis, modeLines, results, care) {
|
|
|
31
31
|
console.log(`- WARN ${warning.label}: ${warning.message} Next: ${warning.action}`);
|
|
32
32
|
}
|
|
33
33
|
console.log('\nNext:\nOpen Codex and say:\n');
|
|
34
|
-
console.log('"Read AGENTS.md, .gaslighting/GASLIGHTING.md, .gaslighting/PRD.md, .gaslighting/STACK_POLICY.md, .gaslighting/MISSING_INFO.md, .gaslighting/ASSUMPTIONS.md, .gaslighting/DECISION_LOG.md, .gaslighting/MEMORY.md, and .gaslighting/PROJECT_CARE.md. Implement the MVP without shrinking scope, without TODO escape, and without fake completion."');
|
|
34
|
+
console.log('"Read AGENTS.md, .gaslighting/GASLIGHTING.md, .gaslighting/PRD.md, .gaslighting/STACK_POLICY.md, .gaslighting/MISSING_INFO.md, .gaslighting/ASSUMPTIONS.md, .gaslighting/DECISION_LOG.md, .gaslighting/MEMORY.md, .gaslighting/AGENT_RUNTIME.md, and .gaslighting/PROJECT_CARE.md. Implement the MVP without shrinking scope, without TODO escape, and without fake completion."');
|
|
35
35
|
}
|
|
@@ -11,8 +11,7 @@ export async function notifyIfUpdateAvailable(argv) {
|
|
|
11
11
|
console.error("Gaslighting-engine update available:");
|
|
12
12
|
console.error(`- current: ${packageVersion}`);
|
|
13
13
|
console.error(`- latest: ${latestVersion}`);
|
|
14
|
-
console.error(`- update:
|
|
15
|
-
console.error(`- npx: npx ${packageName}@latest`);
|
|
14
|
+
console.error(`- update: npx ${packageName}@latest upgrade`);
|
|
16
15
|
console.error("");
|
|
17
16
|
}
|
|
18
17
|
catch {
|
package/dist/version.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export const packageName = "gaslighting-engine";
|
|
2
|
-
export const packageVersion = "0.
|
|
2
|
+
export const packageVersion = "0.3.0";
|
package/docs/codex-usage.md
CHANGED
|
@@ -38,21 +38,41 @@ Check the install:
|
|
|
38
38
|
npx gaslighting-engine codex-doctor
|
|
39
39
|
```
|
|
40
40
|
|
|
41
|
+
Update the Codex skill later:
|
|
42
|
+
|
|
43
|
+
```bash
|
|
44
|
+
npx gaslighting-engine@latest upgrade
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
This is the recommended update flow. It overwrites the local Codex skill and prompt files with the latest package version.
|
|
48
|
+
|
|
41
49
|
## Generate Discipline Docs
|
|
42
50
|
|
|
43
|
-
Generate documents:
|
|
51
|
+
Generate documents and open Mission Control:
|
|
52
|
+
|
|
53
|
+
```bash
|
|
54
|
+
npx gaslighting-engine@latest start "I want to build a hospital website."
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
Open the GUI for an existing Gaslighting project:
|
|
58
|
+
|
|
59
|
+
```bash
|
|
60
|
+
npx gaslighting-engine@latest cockpit
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
Run Codex without the GUI:
|
|
44
64
|
|
|
45
65
|
```bash
|
|
46
|
-
gaslighting-engine "I want to build a hospital website."
|
|
66
|
+
npx gaslighting-engine@latest run "I want to build a hospital website."
|
|
47
67
|
```
|
|
48
68
|
|
|
49
69
|
Then ask Codex:
|
|
50
70
|
|
|
51
71
|
```txt
|
|
52
|
-
Read AGENTS.md, .gaslighting/GASLIGHTING.md, .gaslighting/PRD.md, .gaslighting/STACK_POLICY.md, .gaslighting/MISSING_INFO.md, .gaslighting/ASSUMPTIONS.md, .gaslighting/DECISION_LOG.md, .gaslighting/MEMORY.md, and .gaslighting/PROJECT_CARE.md.
|
|
72
|
+
Read AGENTS.md, .gaslighting/GASLIGHTING.md, .gaslighting/PRD.md, .gaslighting/STACK_POLICY.md, .gaslighting/MISSING_INFO.md, .gaslighting/ASSUMPTIONS.md, .gaslighting/DECISION_LOG.md, .gaslighting/MEMORY.md, .gaslighting/AGENT_RUNTIME.md, and .gaslighting/PROJECT_CARE.md.
|
|
53
73
|
Implement the MVP without shrinking scope, without TODO escape, and without fake completion.
|
|
54
74
|
```
|
|
55
75
|
|
|
56
76
|
Codex should treat root `AGENTS.md` as the project guidance pointer and `.gaslighting/GASLIGHTING.md` as the anti-escape contract.
|
|
57
77
|
|
|
58
|
-
The CLI also generates Codex Skill files, prompt fallback files, `.gaslighting/CODEX_GASLIGHTING.md`, and `.gaslighting/PROJECT_CARE.md` so the workflow still works when a specific Codex surface does not expose a custom slash entry.
|
|
78
|
+
The CLI also generates Codex Skill files, prompt fallback files, `.gaslighting/CODEX_GASLIGHTING.md`, `.gaslighting/AGENT_RUNTIME.md`, and `.gaslighting/PROJECT_CARE.md` so the workflow still works when a specific Codex surface does not expose a custom slash entry.
|
package/docs/examples.md
CHANGED
|
@@ -18,7 +18,11 @@ node dist/index.js "Build a landing page for a new service that captures leads."
|
|
|
18
18
|
Published usage:
|
|
19
19
|
|
|
20
20
|
```bash
|
|
21
|
+
npx gaslighting-engine@latest start "I want to build a hospital website."
|
|
22
|
+
npx gaslighting-engine@latest cockpit
|
|
23
|
+
npx gaslighting-engine@latest run "I want to build a hospital website."
|
|
21
24
|
npx gaslighting-engine "I want to build a hospital website."
|
|
25
|
+
npx gaslighting-engine@latest upgrade
|
|
22
26
|
```
|
|
23
27
|
|
|
24
28
|
This writes discipline documents under `.gaslighting/` and keeps only the Codex pointer `AGENTS.md` in the root.
|
|
@@ -10,7 +10,8 @@ Read the Gaslighting-engine project-control files before doing any work:
|
|
|
10
10
|
6. `.gaslighting/DECISION_LOG.md`
|
|
11
11
|
7. `AGENTS.md`
|
|
12
12
|
8. `.gaslighting/MEMORY.md`
|
|
13
|
-
9. `.gaslighting/
|
|
13
|
+
9. `.gaslighting/AGENT_RUNTIME.md`
|
|
14
|
+
10. `.gaslighting/PROJECT_CARE.md`
|
|
14
15
|
|
|
15
16
|
Then execute the user's requested implementation.
|
|
16
17
|
|
|
@@ -30,3 +31,5 @@ Rules:
|
|
|
30
31
|
- If something is incomplete, declare it explicitly.
|
|
31
32
|
|
|
32
33
|
Before claiming completion, perform the self-audit in `.gaslighting/GASLIGHTING.md`.
|
|
34
|
+
|
|
35
|
+
To refresh this Gaslighting Codex install later, run `npx gaslighting-engine@latest upgrade`.
|
|
@@ -23,7 +23,8 @@ Instead:
|
|
|
23
23
|
10. Generate `.gaslighting/DECISION_LOG.md`.
|
|
24
24
|
11. Generate `.gaslighting/STACK_POLICY.md`.
|
|
25
25
|
12. Generate or update root `AGENTS.md`.
|
|
26
|
-
13. Generate `.gaslighting/
|
|
26
|
+
13. Generate `.gaslighting/AGENT_RUNTIME.md`.
|
|
27
|
+
14. Generate `.gaslighting/PROJECT_CARE.md`.
|
|
27
28
|
|
|
28
29
|
## Hardcore Discipline Rule
|
|
29
30
|
|
|
@@ -92,6 +93,8 @@ Keep main project-control files in `.gaslighting/` and keep only the Codex point
|
|
|
92
93
|
|
|
93
94
|
Use `.gaslighting/PROJECT_CARE.md` to track Git/GitHub/domain/deployment/launch risks without blocking implementation.
|
|
94
95
|
|
|
96
|
+
Use `.gaslighting/AGENT_RUNTIME.md` to define the execution loop Codex must follow after the docs are generated.
|
|
97
|
+
|
|
95
98
|
Do not only explain.
|
|
96
99
|
|
|
97
100
|
Do not produce a plan without files.
|
|
@@ -99,3 +102,11 @@ Do not produce a plan without files.
|
|
|
99
102
|
Do not say what should be done.
|
|
100
103
|
|
|
101
104
|
Generate the actual project discipline documents.
|
|
105
|
+
|
|
106
|
+
## Update Rule
|
|
107
|
+
|
|
108
|
+
When the user asks how to update this Gaslighting Codex install, give the simple command:
|
|
109
|
+
|
|
110
|
+
```bash
|
|
111
|
+
npx gaslighting-engine@latest upgrade
|
|
112
|
+
```
|
|
@@ -11,7 +11,8 @@ Before doing any work, read these files in order:
|
|
|
11
11
|
5. `.gaslighting/ASSUMPTIONS.md`
|
|
12
12
|
6. `.gaslighting/DECISION_LOG.md`
|
|
13
13
|
7. `.gaslighting/MEMORY.md`
|
|
14
|
-
8. `.gaslighting/
|
|
14
|
+
8. `.gaslighting/AGENT_RUNTIME.md`
|
|
15
|
+
9. `.gaslighting/PROJECT_CARE.md`
|
|
15
16
|
|
|
16
17
|
## Prime Directive
|
|
17
18
|
|
|
@@ -41,6 +42,7 @@ A task is complete only when:
|
|
|
41
42
|
- New assumptions are documented.
|
|
42
43
|
- New technical decisions are recorded.
|
|
43
44
|
- Stable project facts are recorded in `.gaslighting/MEMORY.md`.
|
|
45
|
+
- Runtime execution rules are preserved in `.gaslighting/AGENT_RUNTIME.md`.
|
|
44
46
|
- Operational risks are recorded in `.gaslighting/PROJECT_CARE.md`.
|
|
45
47
|
- The result does not contradict `.gaslighting/GASLIGHTING.md`.
|
|
46
48
|
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
# AGENT_RUNTIME.md
|
|
2
|
+
|
|
3
|
+
This file defines how Codex must operate after Gaslighting-engine prepares the project.
|
|
4
|
+
|
|
5
|
+
It is not a suggestion file.
|
|
6
|
+
|
|
7
|
+
It is the runtime loop.
|
|
8
|
+
|
|
9
|
+
## Mission
|
|
10
|
+
|
|
11
|
+
- Original request: Build an ecommerce MVP with product catalog, cart, checkout, and admin orders.
|
|
12
|
+
- Project type: ecommerce
|
|
13
|
+
- Classification confidence: high
|
|
14
|
+
- Runtime stance: Codex-first, full-scope, no fake completion.
|
|
15
|
+
|
|
16
|
+
## Required Loop
|
|
17
|
+
|
|
18
|
+
1. Read the control files before implementation.
|
|
19
|
+
2. Restate the project purpose in one short paragraph.
|
|
20
|
+
3. Convert the PRD into a concrete task checklist.
|
|
21
|
+
4. Implement the checklist systematically.
|
|
22
|
+
5. Use scripts or structured data for repetitive work.
|
|
23
|
+
6. Verify the result with build, tests, lint, browser checks, or direct inspection as appropriate.
|
|
24
|
+
7. Update `.gaslighting/DECISION_LOG.md` when a product or technical decision changes.
|
|
25
|
+
8. Update `.gaslighting/MISSING_INFO.md` when missing information is discovered or resolved.
|
|
26
|
+
9. Update `.gaslighting/MEMORY.md` when stable project facts are learned.
|
|
27
|
+
10. Update `.gaslighting/PROJECT_CARE.md` when GitHub, domain, deployment, env, analytics, email, or launch ownership changes.
|
|
28
|
+
|
|
29
|
+
## Agent Rules
|
|
30
|
+
|
|
31
|
+
- Do not ask the user for non-blocking information before starting work.
|
|
32
|
+
- Do make a reasonable temporary assumption, document it, and continue.
|
|
33
|
+
- Do not create only the visible surface and ignore operational details.
|
|
34
|
+
- Do not stop at a plan when implementation was requested.
|
|
35
|
+
- Do not call a scaffold complete.
|
|
36
|
+
- Do not call TODO comments implementation.
|
|
37
|
+
- Do not call examples full coverage.
|
|
38
|
+
- Do not hide risk behind confident wording.
|
|
39
|
+
- Do not over-engineer to look sophisticated.
|
|
40
|
+
- Do not under-deliver because the work is repetitive.
|
|
41
|
+
|
|
42
|
+
## Codex Execution Contract
|
|
43
|
+
|
|
44
|
+
Before claiming completion, Codex must be able to answer:
|
|
45
|
+
|
|
46
|
+
- What exact requested scope was completed?
|
|
47
|
+
- What exact files changed?
|
|
48
|
+
- What verification was run?
|
|
49
|
+
- What assumptions are still active?
|
|
50
|
+
- What missing information remains?
|
|
51
|
+
- What care risks remain?
|
|
52
|
+
- Is anything incomplete?
|
|
53
|
+
|
|
54
|
+
If anything is incomplete, use the failure declaration protocol in `.gaslighting/GASLIGHTING.md`.
|
|
@@ -14,7 +14,8 @@ Read the following files before doing any work:
|
|
|
14
14
|
6. `.gaslighting/DECISION_LOG.md`
|
|
15
15
|
7. `AGENTS.md`
|
|
16
16
|
8. `.gaslighting/MEMORY.md`
|
|
17
|
-
9. `.gaslighting/
|
|
17
|
+
9. `.gaslighting/AGENT_RUNTIME.md`
|
|
18
|
+
10. `.gaslighting/PROJECT_CARE.md`
|
|
18
19
|
|
|
19
20
|
Then implement the project MVP.
|
|
20
21
|
|
|
@@ -32,4 +33,10 @@ Rules:
|
|
|
32
33
|
|
|
33
34
|
Before claiming completion, perform the self-audit in `.gaslighting/GASLIGHTING.md`.
|
|
34
35
|
|
|
36
|
+
To refresh the Codex skill files later, run:
|
|
37
|
+
|
|
38
|
+
```bash
|
|
39
|
+
npx gaslighting-engine@latest upgrade
|
|
40
|
+
```
|
|
41
|
+
|
|
35
42
|
Proceed.
|
|
@@ -13,8 +13,9 @@ Before doing any work, read these files in order:
|
|
|
13
13
|
5. `.gaslighting/ASSUMPTIONS.md`
|
|
14
14
|
6. `.gaslighting/DECISION_LOG.md`
|
|
15
15
|
7. `.gaslighting/MEMORY.md`
|
|
16
|
-
8. `.gaslighting/
|
|
17
|
-
9. `.gaslighting/
|
|
16
|
+
8. `.gaslighting/AGENT_RUNTIME.md`
|
|
17
|
+
9. `.gaslighting/PROJECT_CARE.md`
|
|
18
|
+
10. `.gaslighting/AGENTS.md`
|
|
18
19
|
|
|
19
20
|
Do not reduce scope.
|
|
20
21
|
|
|
@@ -10,7 +10,8 @@ Read the Gaslighting-engine project-control files before doing any work:
|
|
|
10
10
|
6. `.gaslighting/DECISION_LOG.md`
|
|
11
11
|
7. `AGENTS.md`
|
|
12
12
|
8. `.gaslighting/MEMORY.md`
|
|
13
|
-
9. `.gaslighting/
|
|
13
|
+
9. `.gaslighting/AGENT_RUNTIME.md`
|
|
14
|
+
10. `.gaslighting/PROJECT_CARE.md`
|
|
14
15
|
|
|
15
16
|
Then execute the user's requested implementation.
|
|
16
17
|
|
|
@@ -30,3 +31,5 @@ Rules:
|
|
|
30
31
|
- If something is incomplete, declare it explicitly.
|
|
31
32
|
|
|
32
33
|
Before claiming completion, perform the self-audit in `.gaslighting/GASLIGHTING.md`.
|
|
34
|
+
|
|
35
|
+
To refresh this Gaslighting Codex install later, run `npx gaslighting-engine@latest upgrade`.
|
|
@@ -23,7 +23,8 @@ Instead:
|
|
|
23
23
|
10. Generate `.gaslighting/DECISION_LOG.md`.
|
|
24
24
|
11. Generate `.gaslighting/STACK_POLICY.md`.
|
|
25
25
|
12. Generate or update root `AGENTS.md`.
|
|
26
|
-
13. Generate `.gaslighting/
|
|
26
|
+
13. Generate `.gaslighting/AGENT_RUNTIME.md`.
|
|
27
|
+
14. Generate `.gaslighting/PROJECT_CARE.md`.
|
|
27
28
|
|
|
28
29
|
## Hardcore Discipline Rule
|
|
29
30
|
|
|
@@ -92,6 +93,8 @@ Keep main project-control files in `.gaslighting/` and keep only the Codex point
|
|
|
92
93
|
|
|
93
94
|
Use `.gaslighting/PROJECT_CARE.md` to track Git/GitHub/domain/deployment/launch risks without blocking implementation.
|
|
94
95
|
|
|
96
|
+
Use `.gaslighting/AGENT_RUNTIME.md` to define the execution loop Codex must follow after the docs are generated.
|
|
97
|
+
|
|
95
98
|
Do not only explain.
|
|
96
99
|
|
|
97
100
|
Do not produce a plan without files.
|
|
@@ -99,3 +102,11 @@ Do not produce a plan without files.
|
|
|
99
102
|
Do not say what should be done.
|
|
100
103
|
|
|
101
104
|
Generate the actual project discipline documents.
|
|
105
|
+
|
|
106
|
+
## Update Rule
|
|
107
|
+
|
|
108
|
+
When the user asks how to update this Gaslighting Codex install, give the simple command:
|
|
109
|
+
|
|
110
|
+
```bash
|
|
111
|
+
npx gaslighting-engine@latest upgrade
|
|
112
|
+
```
|
|
@@ -11,7 +11,8 @@ Before doing any work, read these files in order:
|
|
|
11
11
|
5. `.gaslighting/ASSUMPTIONS.md`
|
|
12
12
|
6. `.gaslighting/DECISION_LOG.md`
|
|
13
13
|
7. `.gaslighting/MEMORY.md`
|
|
14
|
-
8. `.gaslighting/
|
|
14
|
+
8. `.gaslighting/AGENT_RUNTIME.md`
|
|
15
|
+
9. `.gaslighting/PROJECT_CARE.md`
|
|
15
16
|
|
|
16
17
|
## Prime Directive
|
|
17
18
|
|
|
@@ -41,6 +42,7 @@ A task is complete only when:
|
|
|
41
42
|
- New assumptions are documented.
|
|
42
43
|
- New technical decisions are recorded.
|
|
43
44
|
- Stable project facts are recorded in `.gaslighting/MEMORY.md`.
|
|
45
|
+
- Runtime execution rules are preserved in `.gaslighting/AGENT_RUNTIME.md`.
|
|
44
46
|
- Operational risks are recorded in `.gaslighting/PROJECT_CARE.md`.
|
|
45
47
|
- The result does not contradict `.gaslighting/GASLIGHTING.md`.
|
|
46
48
|
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
# AGENT_RUNTIME.md
|
|
2
|
+
|
|
3
|
+
This file defines how Codex must operate after Gaslighting-engine prepares the project.
|
|
4
|
+
|
|
5
|
+
It is not a suggestion file.
|
|
6
|
+
|
|
7
|
+
It is the runtime loop.
|
|
8
|
+
|
|
9
|
+
## Mission
|
|
10
|
+
|
|
11
|
+
- Original request: I want to build a hospital website.
|
|
12
|
+
- Project type: hospital_homepage
|
|
13
|
+
- Classification confidence: medium
|
|
14
|
+
- Runtime stance: Codex-first, full-scope, no fake completion.
|
|
15
|
+
|
|
16
|
+
## Required Loop
|
|
17
|
+
|
|
18
|
+
1. Read the control files before implementation.
|
|
19
|
+
2. Restate the project purpose in one short paragraph.
|
|
20
|
+
3. Convert the PRD into a concrete task checklist.
|
|
21
|
+
4. Implement the checklist systematically.
|
|
22
|
+
5. Use scripts or structured data for repetitive work.
|
|
23
|
+
6. Verify the result with build, tests, lint, browser checks, or direct inspection as appropriate.
|
|
24
|
+
7. Update `.gaslighting/DECISION_LOG.md` when a product or technical decision changes.
|
|
25
|
+
8. Update `.gaslighting/MISSING_INFO.md` when missing information is discovered or resolved.
|
|
26
|
+
9. Update `.gaslighting/MEMORY.md` when stable project facts are learned.
|
|
27
|
+
10. Update `.gaslighting/PROJECT_CARE.md` when GitHub, domain, deployment, env, analytics, email, or launch ownership changes.
|
|
28
|
+
|
|
29
|
+
## Agent Rules
|
|
30
|
+
|
|
31
|
+
- Do not ask the user for non-blocking information before starting work.
|
|
32
|
+
- Do make a reasonable temporary assumption, document it, and continue.
|
|
33
|
+
- Do not create only the visible surface and ignore operational details.
|
|
34
|
+
- Do not stop at a plan when implementation was requested.
|
|
35
|
+
- Do not call a scaffold complete.
|
|
36
|
+
- Do not call TODO comments implementation.
|
|
37
|
+
- Do not call examples full coverage.
|
|
38
|
+
- Do not hide risk behind confident wording.
|
|
39
|
+
- Do not over-engineer to look sophisticated.
|
|
40
|
+
- Do not under-deliver because the work is repetitive.
|
|
41
|
+
|
|
42
|
+
## Codex Execution Contract
|
|
43
|
+
|
|
44
|
+
Before claiming completion, Codex must be able to answer:
|
|
45
|
+
|
|
46
|
+
- What exact requested scope was completed?
|
|
47
|
+
- What exact files changed?
|
|
48
|
+
- What verification was run?
|
|
49
|
+
- What assumptions are still active?
|
|
50
|
+
- What missing information remains?
|
|
51
|
+
- What care risks remain?
|
|
52
|
+
- Is anything incomplete?
|
|
53
|
+
|
|
54
|
+
If anything is incomplete, use the failure declaration protocol in `.gaslighting/GASLIGHTING.md`.
|
|
@@ -14,7 +14,8 @@ Read the following files before doing any work:
|
|
|
14
14
|
6. `.gaslighting/DECISION_LOG.md`
|
|
15
15
|
7. `AGENTS.md`
|
|
16
16
|
8. `.gaslighting/MEMORY.md`
|
|
17
|
-
9. `.gaslighting/
|
|
17
|
+
9. `.gaslighting/AGENT_RUNTIME.md`
|
|
18
|
+
10. `.gaslighting/PROJECT_CARE.md`
|
|
18
19
|
|
|
19
20
|
Then implement the project MVP.
|
|
20
21
|
|
|
@@ -32,4 +33,10 @@ Rules:
|
|
|
32
33
|
|
|
33
34
|
Before claiming completion, perform the self-audit in `.gaslighting/GASLIGHTING.md`.
|
|
34
35
|
|
|
36
|
+
To refresh the Codex skill files later, run:
|
|
37
|
+
|
|
38
|
+
```bash
|
|
39
|
+
npx gaslighting-engine@latest upgrade
|
|
40
|
+
```
|
|
41
|
+
|
|
35
42
|
Proceed.
|
|
@@ -13,8 +13,9 @@ Before doing any work, read these files in order:
|
|
|
13
13
|
5. `.gaslighting/ASSUMPTIONS.md`
|
|
14
14
|
6. `.gaslighting/DECISION_LOG.md`
|
|
15
15
|
7. `.gaslighting/MEMORY.md`
|
|
16
|
-
8. `.gaslighting/
|
|
17
|
-
9. `.gaslighting/
|
|
16
|
+
8. `.gaslighting/AGENT_RUNTIME.md`
|
|
17
|
+
9. `.gaslighting/PROJECT_CARE.md`
|
|
18
|
+
10. `.gaslighting/AGENTS.md`
|
|
18
19
|
|
|
19
20
|
Do not reduce scope.
|
|
20
21
|
|
|
@@ -10,7 +10,8 @@ Read the Gaslighting-engine project-control files before doing any work:
|
|
|
10
10
|
6. `.gaslighting/DECISION_LOG.md`
|
|
11
11
|
7. `AGENTS.md`
|
|
12
12
|
8. `.gaslighting/MEMORY.md`
|
|
13
|
-
9. `.gaslighting/
|
|
13
|
+
9. `.gaslighting/AGENT_RUNTIME.md`
|
|
14
|
+
10. `.gaslighting/PROJECT_CARE.md`
|
|
14
15
|
|
|
15
16
|
Then execute the user's requested implementation.
|
|
16
17
|
|
|
@@ -30,3 +31,5 @@ Rules:
|
|
|
30
31
|
- If something is incomplete, declare it explicitly.
|
|
31
32
|
|
|
32
33
|
Before claiming completion, perform the self-audit in `.gaslighting/GASLIGHTING.md`.
|
|
34
|
+
|
|
35
|
+
To refresh this Gaslighting Codex install later, run `npx gaslighting-engine@latest upgrade`.
|
|
@@ -23,7 +23,8 @@ Instead:
|
|
|
23
23
|
10. Generate `.gaslighting/DECISION_LOG.md`.
|
|
24
24
|
11. Generate `.gaslighting/STACK_POLICY.md`.
|
|
25
25
|
12. Generate or update root `AGENTS.md`.
|
|
26
|
-
13. Generate `.gaslighting/
|
|
26
|
+
13. Generate `.gaslighting/AGENT_RUNTIME.md`.
|
|
27
|
+
14. Generate `.gaslighting/PROJECT_CARE.md`.
|
|
27
28
|
|
|
28
29
|
## Hardcore Discipline Rule
|
|
29
30
|
|
|
@@ -92,6 +93,8 @@ Keep main project-control files in `.gaslighting/` and keep only the Codex point
|
|
|
92
93
|
|
|
93
94
|
Use `.gaslighting/PROJECT_CARE.md` to track Git/GitHub/domain/deployment/launch risks without blocking implementation.
|
|
94
95
|
|
|
96
|
+
Use `.gaslighting/AGENT_RUNTIME.md` to define the execution loop Codex must follow after the docs are generated.
|
|
97
|
+
|
|
95
98
|
Do not only explain.
|
|
96
99
|
|
|
97
100
|
Do not produce a plan without files.
|
|
@@ -99,3 +102,11 @@ Do not produce a plan without files.
|
|
|
99
102
|
Do not say what should be done.
|
|
100
103
|
|
|
101
104
|
Generate the actual project discipline documents.
|
|
105
|
+
|
|
106
|
+
## Update Rule
|
|
107
|
+
|
|
108
|
+
When the user asks how to update this Gaslighting Codex install, give the simple command:
|
|
109
|
+
|
|
110
|
+
```bash
|
|
111
|
+
npx gaslighting-engine@latest upgrade
|
|
112
|
+
```
|
|
@@ -11,7 +11,8 @@ Before doing any work, read these files in order:
|
|
|
11
11
|
5. `.gaslighting/ASSUMPTIONS.md`
|
|
12
12
|
6. `.gaslighting/DECISION_LOG.md`
|
|
13
13
|
7. `.gaslighting/MEMORY.md`
|
|
14
|
-
8. `.gaslighting/
|
|
14
|
+
8. `.gaslighting/AGENT_RUNTIME.md`
|
|
15
|
+
9. `.gaslighting/PROJECT_CARE.md`
|
|
15
16
|
|
|
16
17
|
## Prime Directive
|
|
17
18
|
|
|
@@ -41,6 +42,7 @@ A task is complete only when:
|
|
|
41
42
|
- New assumptions are documented.
|
|
42
43
|
- New technical decisions are recorded.
|
|
43
44
|
- Stable project facts are recorded in `.gaslighting/MEMORY.md`.
|
|
45
|
+
- Runtime execution rules are preserved in `.gaslighting/AGENT_RUNTIME.md`.
|
|
44
46
|
- Operational risks are recorded in `.gaslighting/PROJECT_CARE.md`.
|
|
45
47
|
- The result does not contradict `.gaslighting/GASLIGHTING.md`.
|
|
46
48
|
|