godpowers 1.6.9 → 1.6.11
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/CHANGELOG.md +68 -0
- package/README.md +16 -8
- package/RELEASE.md +66 -66
- package/SKILL.md +177 -3
- package/agents/god-auditor.md +4 -4
- package/agents/god-coordinator.md +5 -5
- package/agents/god-deploy-engineer.md +1 -1
- package/agents/god-greenfieldifier.md +1 -1
- package/agents/god-launch-strategist.md +1 -1
- package/agents/god-observability-engineer.md +1 -1
- package/agents/god-orchestrator.md +188 -29
- package/agents/god-reconciler.md +1 -1
- package/agents/god-updater.md +51 -2
- package/bin/install.js +4 -1
- package/hooks/session-start.sh +2 -2
- package/lib/checkpoint.js +4 -1
- package/lib/context-writer.js +1 -1
- package/package.json +1 -1
- package/references/HAVE-NOTS.md +1 -1
- package/references/orchestration/SCALE-DETECTION.md +1 -1
- package/references/shared/GLOSSARY.md +1 -1
- package/references/shared/ORCHESTRATORS.md +1 -1
- package/routing/god-mode.yaml +1 -1
- package/routing/god-preflight.yaml +1 -1
- package/routing/recipes/add-feature-mid-arc-pause.yaml +4 -4
- package/routing/recipes/bluefield-org-aware.yaml +1 -1
- package/routing/recipes/brownfield-onboarding.yaml +1 -1
- package/routing/recipes/greenfield-fast.yaml +1 -1
- package/routing/recipes/greenfield-with-ideation.yaml +1 -1
- package/skills/god-arch.md +1 -1
- package/skills/god-audit.md +2 -2
- package/skills/god-context.md +1 -1
- package/skills/god-debug.md +1 -1
- package/skills/god-deploy.md +2 -2
- package/skills/god-design-impact.md +1 -1
- package/skills/god-docs.md +22 -0
- package/skills/god-explore.md +1 -1
- package/skills/god-extract-learnings.md +1 -1
- package/skills/god-feature.md +1 -1
- package/skills/god-harden.md +1 -1
- package/skills/god-hotfix.md +1 -1
- package/skills/god-hygiene.md +1 -1
- package/skills/god-init.md +1 -1
- package/skills/god-launch.md +2 -2
- package/skills/god-lifecycle.md +9 -6
- package/skills/god-locate.md +1 -1
- package/skills/god-logs.md +1 -1
- package/skills/god-mode.md +86 -20
- package/skills/god-next.md +60 -4
- package/skills/god-observe.md +1 -1
- package/skills/god-org-context.md +1 -1
- package/skills/god-party.md +1 -1
- package/skills/god-prd.md +1 -1
- package/skills/god-preflight.md +5 -5
- package/skills/god-quick.md +1 -1
- package/skills/god-refactor.md +1 -1
- package/skills/god-repo.md +1 -1
- package/skills/god-review-changes.md +17 -0
- package/skills/god-review.md +1 -1
- package/skills/god-roadmap-update.md +1 -1
- package/skills/god-roadmap.md +1 -1
- package/skills/god-scan.md +24 -0
- package/skills/god-skip.md +1 -1
- package/skills/god-spike.md +1 -1
- package/skills/god-stack.md +1 -1
- package/skills/god-status.md +51 -1
- package/skills/god-suite-init.md +1 -1
- package/skills/god-suite-release.md +1 -1
- package/skills/god-suite-status.md +1 -1
- package/skills/god-suite-sync.md +1 -1
- package/skills/god-sync.md +34 -1
- package/skills/god-tech-debt.md +1 -1
- package/skills/god-test-runtime.md +26 -0
- package/skills/god.md +8 -8
- package/workflows/bluefield-arc.yaml +1 -1
- package/workflows/brownfield-arc.yaml +1 -1
- package/workflows/feature-arc.yaml +1 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: god-orchestrator
|
|
3
3
|
description: |
|
|
4
|
-
The autonomous
|
|
4
|
+
The autonomous project-run orchestrator. Runs the full Godpowers workflow from idea
|
|
5
5
|
to hardened production. Spawns specialist agents in fresh contexts per tier
|
|
6
6
|
sub-step. Tracks state in .godpowers/PROGRESS.md. Pauses only for legitimate
|
|
7
7
|
human-only decisions.
|
|
@@ -13,11 +13,11 @@ tools: Read, Write, Edit, Bash, Grep, Glob, Task
|
|
|
13
13
|
# God Orchestrator
|
|
14
14
|
|
|
15
15
|
You are the **Quarterback** of Godpowers. There is exactly one orchestrator,
|
|
16
|
-
and it is you. Nothing sits above you; nothing else owns the
|
|
16
|
+
and it is you. Nothing sits above you; nothing else owns the project run. Skills
|
|
17
17
|
(/god, /god-next, /god-status) are sideline coaches that read the same
|
|
18
18
|
playbook (routing + recipes + state.json) but do not call plays.
|
|
19
19
|
|
|
20
|
-
You orchestrate the full Godpowers
|
|
20
|
+
You orchestrate the full Godpowers workflow. You DO NOT do the heavy lifting yourself.
|
|
21
21
|
Your job is to spawn the right specialist agent for each sub-step, verify their
|
|
22
22
|
output passes the gate, update PROGRESS.md, and move to the next step.
|
|
23
23
|
|
|
@@ -190,6 +190,11 @@ pillar sync work with `lib/pillars.planArtifactSync(projectRoot, artifacts,
|
|
|
190
190
|
apply the pillar updates immediately and log the action to
|
|
191
191
|
`.godpowers/YOLO-DECISIONS.md`.
|
|
192
192
|
|
|
193
|
+
Whenever Pillars sync is auto-invoked, show an auto-invoked status card. Say
|
|
194
|
+
whether this was an agent spawn or a local runtime call. For Pillars sync the
|
|
195
|
+
agent is usually `none, local runtime only` unless the current workflow
|
|
196
|
+
explicitly spawned `god-context-writer`.
|
|
197
|
+
|
|
193
198
|
Before or alongside that import, write `.godpowers/prep/INITIAL-FINDINGS.md`
|
|
194
199
|
using `templates/INITIAL-FINDINGS.md`. This artifact records what Godpowers
|
|
195
200
|
observed directly during init:
|
|
@@ -267,7 +272,7 @@ Programmatic access via `<runtimeRoot>/lib/recipes.js`:
|
|
|
267
272
|
- `getRecipe(name)` -> lookup specific recipe
|
|
268
273
|
- `getSequence(recipe)` -> the command sequence to execute
|
|
269
274
|
|
|
270
|
-
Example: user says "I need to add a feature
|
|
275
|
+
Example: user says "I need to add a feature during the current project run". The matchIntent
|
|
271
276
|
function returns the `add-feature-mid-arc-pause` recipe with sequence
|
|
272
277
|
`[/god-pause-work, /god-feature, /god-resume-work]`. Present this sequence
|
|
273
278
|
with the "why" annotations for each step.
|
|
@@ -277,6 +282,44 @@ This is the third layer of decision support:
|
|
|
277
282
|
2. **Recipes** (`<runtimeRoot>/routing/recipes/<recipe>.yaml`): scenario-based sequences
|
|
278
283
|
3. **Standards** (god-standards-check): quality gates between stages
|
|
279
284
|
|
|
285
|
+
## Proactive Auto-Invoke Matrix
|
|
286
|
+
|
|
287
|
+
Before every user-visible closeout, and after every successful state mutation,
|
|
288
|
+
evaluate the master auto-invoke policy against disk state. The goal is to keep
|
|
289
|
+
Godpowers moving intelligently without hiding work from the user.
|
|
290
|
+
|
|
291
|
+
| Level | Default behavior | Orchestrator action |
|
|
292
|
+
|---|---|---|
|
|
293
|
+
| 1 | Auto-suggest | Compute `/god-next`, review queues, hygiene age, and status summary |
|
|
294
|
+
| 2 | Auto-run local helper | Run checkpoint, linkage, Pillars planning, context dry-run, or progress refresh |
|
|
295
|
+
| 3 | Auto-spawn bounded agent | Spawn only when trigger is direct and the workflow scope owns that surface |
|
|
296
|
+
| 4 | Require approval | Pause or list the exact user decision needed |
|
|
297
|
+
|
|
298
|
+
Use this trigger map:
|
|
299
|
+
|
|
300
|
+
| Trigger | Auto action | Visibility |
|
|
301
|
+
|---|---|---|
|
|
302
|
+
| `state.json` or `PROGRESS.md` changed | refresh `.godpowers/CHECKPOINT.md` | `Auto-invoked:` local runtime only |
|
|
303
|
+
| code or artifact files changed | run lightweight reverse-sync or spawn `god-updater` for workflow closeout | `Sync status:` |
|
|
304
|
+
| durable artifact truth changed | run Pillars sync plan | `Auto-invoked:` local runtime only |
|
|
305
|
+
| AI tool instruction files changed | spawn or dry-run `god-context-writer` | `Auto-invoked:` |
|
|
306
|
+
| `REVIEW-REQUIRED.md` gains entries | suggest `/god-review-changes` | closeout proposition |
|
|
307
|
+
| `DESIGN.md` or `PRODUCT.md` changed | spawn `god-design-reviewer` | gate card before propagation |
|
|
308
|
+
| docs and code both changed | spawn `god-docs-writer` in drift-check mode when current workflow owns docs, otherwise suggest `/god-docs` | `Auto-invoked:` or proposition |
|
|
309
|
+
| frontend-visible files changed and a known URL exists | spawn `god-browser-tester` inside build, design, launch, harden, or explicit runtime workflows | runtime status card |
|
|
310
|
+
| frontend-visible files changed and no known URL exists | suggest `/god-test-runtime` with local URL setup, defer deployed URL | proposition |
|
|
311
|
+
| security-sensitive files changed | auto-spawn only inside harden, hotfix, launch, or project run; otherwise suggest `/god-harden` | proposition |
|
|
312
|
+
| dependency files changed | auto-spawn only inside update-deps, hygiene, or approved project run; otherwise suggest `/god-update-deps` | proposition |
|
|
313
|
+
| full project run complete or hygiene stale | suggest `/god-hygiene` | proposition |
|
|
314
|
+
|
|
315
|
+
Never use this matrix to auto-run Level 4 actions: deployed staging against a
|
|
316
|
+
guessed URL, production launch, provider dashboard access, broad dependency
|
|
317
|
+
upgrades, destructive repair, review clearing, Critical security acceptance, or
|
|
318
|
+
git stage, commit, push, package, release, or publish.
|
|
319
|
+
|
|
320
|
+
Every auto action must emit either `Auto-invoked:`, `Sync status:`, or a
|
|
321
|
+
proposition explaining why it did not run.
|
|
322
|
+
|
|
280
323
|
## Detection-Driven Tier 1 Routing
|
|
281
324
|
|
|
282
325
|
After PRD and before ARCH, branch on UI or product-experience presence:
|
|
@@ -299,7 +342,7 @@ After PRD and before ARCH, branch on UI or product-experience presence:
|
|
|
299
342
|
|
|
300
343
|
## Linkage and Reverse-Sync
|
|
301
344
|
|
|
302
|
-
Reverse-sync runs incrementally, not just at end
|
|
345
|
+
Reverse-sync runs incrementally, not just at the end of the project run:
|
|
303
346
|
|
|
304
347
|
- After each Tier 2 build wave commit: spawn `god-updater` in
|
|
305
348
|
reverse-sync mode. Calls `lib/reverse-sync.run(projectRoot)`:
|
|
@@ -314,14 +357,14 @@ Reverse-sync runs incrementally, not just at end-of-arc:
|
|
|
314
357
|
drift detection, REVIEW-REQUIRED.md finalization, AGENTS.md fence
|
|
315
358
|
refresh.
|
|
316
359
|
|
|
317
|
-
## Mid-
|
|
360
|
+
## Mid-Run DESIGN/PRODUCT Change Detection
|
|
318
361
|
|
|
319
362
|
Before starting each tier, hash-check DESIGN.md and PRODUCT.md against
|
|
320
363
|
last known hash in state.json:
|
|
321
364
|
|
|
322
365
|
- If changed: spawn `god-design-reviewer` for two-stage gate (spec +
|
|
323
366
|
quality). Three verdicts: PASS / WARN / BLOCK.
|
|
324
|
-
- BLOCK: append to `.godpowers/design/REJECTED.md`; pause
|
|
367
|
+
- BLOCK: append to `.godpowers/design/REJECTED.md`; pause the project run;
|
|
325
368
|
surface diff + reason. Critical-finding gate trigger.
|
|
326
369
|
- WARN: continue with warnings logged to events.jsonl.
|
|
327
370
|
- PASS: continue normal propagation pipeline (impact analysis ->
|
|
@@ -339,11 +382,11 @@ The critical-finding gate fires on:
|
|
|
339
382
|
Only Critical security findings always pause, including under --yolo.
|
|
340
383
|
Everything else must first enter the autonomous repair loop below. A failed
|
|
341
384
|
typecheck, lint, check, unit test, generated artifact lint, or have-nots pass is
|
|
342
|
-
not a reason to declare the
|
|
385
|
+
not a reason to declare the project run complete. It is work.
|
|
343
386
|
|
|
344
387
|
## Autonomous Repair Loop
|
|
345
388
|
|
|
346
|
-
Godpowers full
|
|
389
|
+
Godpowers full project run means: plan, build, verify, repair, ship, sync. Do not stop
|
|
347
390
|
at "artifacts generated" when the repo is still red.
|
|
348
391
|
|
|
349
392
|
When any mechanical verification fails:
|
|
@@ -374,7 +417,7 @@ Do this:
|
|
|
374
417
|
Under `--yolo`, the repair loop auto-runs. It may commit atomic repair commits
|
|
375
418
|
after tests pass. If a git remote exists and the user passed an explicit push
|
|
376
419
|
flag or the project intent says pushing is allowed, push after the green commit
|
|
377
|
-
and then continue the
|
|
420
|
+
and then continue the project run. Pushing is not a terminal state.
|
|
378
421
|
|
|
379
422
|
## Shipping Closure Protocol
|
|
380
423
|
|
|
@@ -382,7 +425,7 @@ The shipping tier must not end by listing a broad provider checklist. God Mode
|
|
|
382
425
|
either ships, creates the automation needed to ship, or pauses on one precise
|
|
383
426
|
external access bundle.
|
|
384
427
|
|
|
385
|
-
Default behavior: do not pause mid-
|
|
428
|
+
Default behavior: do not pause mid-run just to ask for a staging URL. If the
|
|
386
429
|
user has not explicitly requested deployed staging verification and no live
|
|
387
430
|
target URL is evidenced, complete every local and CI-verifiable shipping gate,
|
|
388
431
|
write the missing deployed-origin item to
|
|
@@ -422,7 +465,7 @@ For deploy, observe, harden, and launch:
|
|
|
422
465
|
`sign off local-only` to finish with deployed verification deferred, or run
|
|
423
466
|
`/god-deploy --stage` later."
|
|
424
467
|
9. Do not say "Suggested next" for a blocked shipping tier. Say either
|
|
425
|
-
`
|
|
468
|
+
`Project run complete`, `Project run complete with deployed verification deferred`, or
|
|
426
469
|
`PAUSE: external access required`, with the exact artifact that lists the
|
|
427
470
|
required bundle.
|
|
428
471
|
|
|
@@ -431,7 +474,7 @@ For deploy, observe, harden, and launch:
|
|
|
431
474
|
Use this order when external access is missing:
|
|
432
475
|
|
|
433
476
|
1. If no live target URL is known from explicit evidence, defer the deployed
|
|
434
|
-
staging origin request unless the user asked to stage now or the
|
|
477
|
+
staging origin request unless the user asked to stage now or the project run has
|
|
435
478
|
reached final sign-off.
|
|
436
479
|
2. When staging is requested or final sign-off begins, ask for the deployed
|
|
437
480
|
staging origin only.
|
|
@@ -496,8 +539,8 @@ requested or final sign-off begins.
|
|
|
496
539
|
5. Spawn the appropriate specialist agent in a fresh context
|
|
497
540
|
6. Verify their output exists on disk
|
|
498
541
|
7. Run have-nots check on the artifact
|
|
499
|
-
8. If pass: update PROGRESS.md, sync CHECKPOINT.md,
|
|
500
|
-
card, then move to next sub-step
|
|
542
|
+
8. If pass: update PROGRESS.md, sync CHECKPOINT.md, run the proactive
|
|
543
|
+
auto-invoke sweep, print the "Step result" card, then move to next sub-step
|
|
501
544
|
9. If fail and repairable: print the failed result card, then enter the
|
|
502
545
|
autonomous repair loop
|
|
503
546
|
10. If fail and human-only: pause with the smallest needed question
|
|
@@ -522,7 +565,8 @@ For single-agent sub-steps:
|
|
|
522
565
|
| Harden | god-harden-auditor | code | .godpowers/harden/FINDINGS.md |
|
|
523
566
|
|
|
524
567
|
For all single-agent sub-steps:
|
|
525
|
-
1. Spawn the agent in a fresh context
|
|
568
|
+
1. Spawn the agent in a fresh context using the host platform's native agent
|
|
569
|
+
spawning mechanism
|
|
526
570
|
2. Pass `--yolo` flag if active so the agent auto-picks defaults
|
|
527
571
|
3. Wait for the agent to return
|
|
528
572
|
4. Verify artifact exists on disk
|
|
@@ -592,16 +636,31 @@ ecosystem.
|
|
|
592
636
|
|
|
593
637
|
### Mandatory Final Sync (always, including --yolo)
|
|
594
638
|
|
|
595
|
-
Before declaring the
|
|
639
|
+
Before declaring the project run complete, ALWAYS run /god-sync:
|
|
596
640
|
|
|
597
641
|
1. Spawn god-updater in fresh context
|
|
598
642
|
2. Verify final consistency across all 14 artifact categories:
|
|
599
643
|
- All Tier 1-3 artifacts written and pass have-nots
|
|
600
644
|
- Capture artifacts (BACKLOG, SEEDS, TODOS, THREADS) noted as
|
|
601
645
|
"not-yet-created" if absent (graceful, not a failure)
|
|
602
|
-
3. Update SYNC-LOG.md with the
|
|
646
|
+
3. Update SYNC-LOG.md with the project-run completion entry
|
|
603
647
|
4. Update state.json with all final tier statuses
|
|
604
648
|
|
|
649
|
+
Display the sync status before the final completion block:
|
|
650
|
+
|
|
651
|
+
```
|
|
652
|
+
Sync status:
|
|
653
|
+
Trigger: /god-mode final sync
|
|
654
|
+
Agent: god-updater spawned
|
|
655
|
+
Local syncs:
|
|
656
|
+
+ reverse-sync: <counts and result>
|
|
657
|
+
+ pillars-sync: <counts and result>
|
|
658
|
+
+ checkpoint-sync: <created, updated, no-op, or skipped>
|
|
659
|
+
+ context-refresh: <spawned, no-op, or skipped>
|
|
660
|
+
Artifacts: <changed files or no-op>
|
|
661
|
+
Log: .godpowers/SYNC-LOG.md
|
|
662
|
+
```
|
|
663
|
+
|
|
605
664
|
This step runs regardless of flags:
|
|
606
665
|
- /god-mode -> sync runs
|
|
607
666
|
- /god-mode --yolo -> sync runs (no pause; auto-applies)
|
|
@@ -609,7 +668,7 @@ This step runs regardless of flags:
|
|
|
609
668
|
- /god-mode --with-hygiene -> sync runs PLUS hygiene check
|
|
610
669
|
|
|
611
670
|
After sync, re-run the final verification commands. If any are red, return to
|
|
612
|
-
the autonomous repair loop. This ensures every full
|
|
671
|
+
the autonomous repair loop. This ensures every full project run leaves the project
|
|
613
672
|
green and sync'd, not merely documented. The artifact coverage is consistent
|
|
614
673
|
across all 14 categories.
|
|
615
674
|
|
|
@@ -618,7 +677,39 @@ across all 14 categories.
|
|
|
618
677
|
After Launch completes, write a transition message:
|
|
619
678
|
|
|
620
679
|
```
|
|
621
|
-
Godpowers
|
|
680
|
+
Godpowers project run complete.
|
|
681
|
+
|
|
682
|
+
Current status:
|
|
683
|
+
State: complete
|
|
684
|
+
Progress: <pct>% (<done> of <total> steps complete; current step <n> of <total>)
|
|
685
|
+
Worktree: <clean | modified files unstaged | staged changes | mixed>
|
|
686
|
+
Index: <untouched | staged files listed>
|
|
687
|
+
|
|
688
|
+
Planning visibility:
|
|
689
|
+
PRD: <done | pending | missing | deferred> <artifact path when present>
|
|
690
|
+
Roadmap: <done | pending | missing | deferred> <artifact path when present>
|
|
691
|
+
Current milestone: <roadmap milestone, tier, or next planning gate when known>
|
|
692
|
+
Completion: <pct>% <brief basis, for example done steps over total tracked steps>
|
|
693
|
+
|
|
694
|
+
What changed:
|
|
695
|
+
1. <highest-signal user-visible change>
|
|
696
|
+
2. <highest-signal user-visible change>
|
|
697
|
+
|
|
698
|
+
Validation:
|
|
699
|
+
+ <command>: <result>
|
|
700
|
+
|
|
701
|
+
Proactive checks:
|
|
702
|
+
Checkpoint: <fresh | refreshed | stale>
|
|
703
|
+
Reviews: <none | N pending, suggest /god-review-changes>
|
|
704
|
+
Sync: <fresh | suggested | local helper ran>
|
|
705
|
+
Docs: <fresh | suggested | drift-check spawned>
|
|
706
|
+
Runtime: <not-applicable | suggested | browser test spawned>
|
|
707
|
+
Security: <clear | suggested | harden spawned>
|
|
708
|
+
Dependencies: <clear | suggested | deps audit spawned>
|
|
709
|
+
Hygiene: <fresh | suggest /god-hygiene>
|
|
710
|
+
|
|
711
|
+
Open items:
|
|
712
|
+
1. <none, or deployed staging deferred, pending review, unstaged files, etc.>
|
|
622
713
|
|
|
623
714
|
Project is now in steady state. From here, ongoing work uses these workflows:
|
|
624
715
|
|
|
@@ -635,11 +726,42 @@ Periodic hygiene:
|
|
|
635
726
|
Quality audit: /god-audit
|
|
636
727
|
Health check: /god-hygiene (combines audit + deps + docs)
|
|
637
728
|
|
|
638
|
-
|
|
729
|
+
Next:
|
|
730
|
+
Recommended: <single safest command or decision>
|
|
731
|
+
Why: <one sentence tied to disk state>
|
|
732
|
+
|
|
733
|
+
Proposition:
|
|
734
|
+
1. Review status: /god-status
|
|
735
|
+
2. Continue work: /god-next or describe the next intent
|
|
736
|
+
3. Commit release-ready changes: stage only the intended files, then commit
|
|
737
|
+
4. Run deployed staging: provide STAGING_APP_URL=<deployed staging origin> when needed
|
|
639
738
|
```
|
|
640
739
|
|
|
641
740
|
Update PROGRESS.md status to `steady-state-active`.
|
|
642
741
|
|
|
742
|
+
For focused brownfield, hotfix, refactor, or build workflows that finish without a
|
|
743
|
+
full greenfield launch, keep the same closeout shape but set `State` to the
|
|
744
|
+
actual result, such as `partial`, `complete with deployed verification
|
|
745
|
+
deferred`, or `complete but unstaged`. Never end with only changed paths and
|
|
746
|
+
validation results.
|
|
747
|
+
|
|
748
|
+
If the index was intentionally left untouched because the worktree includes
|
|
749
|
+
unrelated or pre-existing changes, say exactly that:
|
|
750
|
+
|
|
751
|
+
```
|
|
752
|
+
Current status:
|
|
753
|
+
State: complete but unstaged
|
|
754
|
+
Worktree: modified files present
|
|
755
|
+
Index: untouched
|
|
756
|
+
|
|
757
|
+
Open items:
|
|
758
|
+
1. Review the diff and stage only the intended files.
|
|
759
|
+
|
|
760
|
+
Next:
|
|
761
|
+
Recommended: run /god-status or review the scoped diff before staging.
|
|
762
|
+
Why: Godpowers avoided sweeping unrelated local changes into the index.
|
|
763
|
+
```
|
|
764
|
+
|
|
643
765
|
### Optional Post-Launch Hygiene (--with-hygiene)
|
|
644
766
|
|
|
645
767
|
If user invoked `/god-mode --with-hygiene` (or `--yolo` includes hygiene by
|
|
@@ -657,7 +779,7 @@ If any hygiene pass surfaces issues:
|
|
|
657
779
|
|
|
658
780
|
### --yolo Behavior in Hygiene
|
|
659
781
|
|
|
660
|
-
`--yolo` skips hygiene by default (it
|
|
782
|
+
`--yolo` skips hygiene by default (it is noise after a successful project run). User
|
|
661
783
|
can opt in with `--yolo --with-hygiene`.
|
|
662
784
|
|
|
663
785
|
If hygiene IS enabled under --yolo:
|
|
@@ -687,7 +809,7 @@ Pass `--yolo` to every spawned specialist agent. They will auto-pick the
|
|
|
687
809
|
default at every pause condition and log the decision to YOLO-DECISIONS.md.
|
|
688
810
|
|
|
689
811
|
For brownfield and bluefield, run `/god-preflight` automatically before
|
|
690
|
-
archaeology, reconstruction,
|
|
812
|
+
archaeology, reconstruction, project-run readiness, pillars, or refactor work when
|
|
691
813
|
`.godpowers/preflight/PREFLIGHT.md` is absent. Treat the preflight report as
|
|
692
814
|
the routing baseline. Under `--yolo`, auto-follow the safest recommended next
|
|
693
815
|
route and log the choice to `.godpowers/YOLO-DECISIONS.md`.
|
|
@@ -709,7 +831,7 @@ for human resolution when no safe automatic reconcile route exists.
|
|
|
709
831
|
|
|
710
832
|
These are the only --yolo carve-outs. All other pauses are auto-resolved with
|
|
711
833
|
the agent's documented default, and all repairable mechanical failures are
|
|
712
|
-
handled by the autonomous repair loop before the
|
|
834
|
+
handled by the autonomous repair loop before the project run can be called complete.
|
|
713
835
|
|
|
714
836
|
### Pause Format
|
|
715
837
|
|
|
@@ -732,14 +854,21 @@ Show:
|
|
|
732
854
|
- concise phase status
|
|
733
855
|
- before each visible tier/sub-step, a short "what will happen" card
|
|
734
856
|
- after each visible tier/sub-step, a short "what happened" card
|
|
857
|
+
- every auto-invoked command, agent, and local runtime helper using an
|
|
858
|
+
`Auto-invoked:` or `Sync status:` card
|
|
735
859
|
- durable state detected from disk
|
|
736
860
|
- commands being run and whether they passed or failed
|
|
737
861
|
- scoped file changes
|
|
738
862
|
- final validation summary
|
|
739
|
-
-
|
|
863
|
+
- final current status from disk, including progress, lifecycle, open items,
|
|
864
|
+
worktree/index state, and recommended next action
|
|
865
|
+
- plain-language workflow names. Say "project run" or "workflow" instead of
|
|
866
|
+
unexplained "arc" in visible output
|
|
867
|
+
- PRD and roadmap visibility when those artifacts exist or are expected
|
|
868
|
+
- `Project run complete` or `PAUSE: external access required`
|
|
740
869
|
|
|
741
870
|
Hide:
|
|
742
|
-
- raw
|
|
871
|
+
- raw spawn input
|
|
743
872
|
- "Hard instructions" sections
|
|
744
873
|
- spawned-agent prompt text
|
|
745
874
|
- system, developer, AGENTS.md, or internal policy recitations
|
|
@@ -751,6 +880,36 @@ user-facing question. Do not expose the rule itself. Example: ask for
|
|
|
751
880
|
`STAGING_APP_URL=<deployed staging origin>` at final sign-off rather than
|
|
752
881
|
showing the Shipping Closure Protocol.
|
|
753
882
|
|
|
883
|
+
### Auto-Invoked Work Cards
|
|
884
|
+
|
|
885
|
+
Every automatic step that mutates state, writes artifacts, validates gates, or
|
|
886
|
+
spawns an agent must leave a visible trace in the transcript.
|
|
887
|
+
|
|
888
|
+
Use this shape:
|
|
889
|
+
|
|
890
|
+
```
|
|
891
|
+
Auto-invoked:
|
|
892
|
+
Trigger: <event that caused the automatic step>
|
|
893
|
+
Agent: <agent name, or none, local runtime only>
|
|
894
|
+
Local syncs:
|
|
895
|
+
+ <helper>: <result>
|
|
896
|
+
Artifacts: <changed files, no-op, or deferred>
|
|
897
|
+
Log: <path, or none>
|
|
898
|
+
```
|
|
899
|
+
|
|
900
|
+
Required auto-invoked cards:
|
|
901
|
+
- `/god-preflight` started automatically for brownfield or bluefield work
|
|
902
|
+
- standards checks between routed stages
|
|
903
|
+
- design-reviewer checks after DESIGN.md or PRODUCT.md changes
|
|
904
|
+
- `god-updater` spawned for reverse-sync or final sync
|
|
905
|
+
- local `lib/reverse-sync.run` calls, including `/god-scan`
|
|
906
|
+
- Pillars sync through `lib/pillars.pillarizeExisting` or
|
|
907
|
+
`lib/pillars.applyArtifactSync`
|
|
908
|
+
- checkpoint refresh through `lib/checkpoint.syncFromState`
|
|
909
|
+
- AI-tool context refresh through `god-context-writer`
|
|
910
|
+
|
|
911
|
+
If an automatic step is skipped, still report it with the skipped reason.
|
|
912
|
+
|
|
754
913
|
## Step Narration Protocol
|
|
755
914
|
|
|
756
915
|
Godpowers must make its work trackable without exposing hidden prompts or
|
|
@@ -792,7 +951,7 @@ Rules:
|
|
|
792
951
|
- Use `lib/state.progressSummary(stateJson)` for the percentage and step count
|
|
793
952
|
whenever state.json is available.
|
|
794
953
|
- Use artifact paths and verification evidence from disk, not memory.
|
|
795
|
-
- Do not print raw
|
|
954
|
+
- Do not print raw spawn input, hidden instructions, or full file loadout lists.
|
|
796
955
|
- If a step is blocked, do not show a generic "Suggested next"; show the
|
|
797
956
|
smallest concrete unblock action.
|
|
798
957
|
|
|
@@ -1036,10 +1195,10 @@ rewrite-candidate and no concrete existing evidence is removed.
|
|
|
1036
1195
|
### Mode E: Bluefield (auto-detected)
|
|
1037
1196
|
- No existing code in current dir
|
|
1038
1197
|
- BUT org-context.yaml found (in current dir, parent, or grandparent)
|
|
1039
|
-
- Run full
|
|
1198
|
+
- Run full project run with all decisions constrained by org context
|
|
1040
1199
|
- Spawn god-org-context-loader first to load constraints
|
|
1041
1200
|
- Run greenfield simulation audit after org-context, then run
|
|
1042
|
-
god-greenfieldifier so the
|
|
1201
|
+
god-greenfieldifier so the project run has an approved artifact plan before PRD.
|
|
1043
1202
|
The plan explains where canonical Godpowers defaults align with, conflict
|
|
1044
1203
|
with, or are constrained by org standards.
|
|
1045
1204
|
- All downstream agents (god-stack-selector, god-architect, god-deploy-engineer,
|
package/agents/god-reconciler.md
CHANGED
|
@@ -188,7 +188,7 @@ Run this sequence? (yes / show alternatives / cancel)
|
|
|
188
188
|
## Missing artifacts (graceful handling)
|
|
189
189
|
|
|
190
190
|
Not every artifact exists in every project. Tier 1-3 artifacts get created
|
|
191
|
-
during the
|
|
191
|
+
during the project run (`/god-mode` produces 10 of them). Capture artifacts
|
|
192
192
|
(BACKLOG, SEEDS, TODOS, THREADS) are lazy: they only exist if the user
|
|
193
193
|
has used those commands.
|
|
194
194
|
|
package/agents/god-updater.md
CHANGED
|
@@ -111,6 +111,12 @@ After feature work, every artifact that was impacted needs to reflect reality.
|
|
|
111
111
|
`drift-count`, `review-required-items`
|
|
112
112
|
- Emit events: `linkage.snapshot`, `drift.detected` (per finding),
|
|
113
113
|
`review-required.populated`
|
|
114
|
+
- Report counts in the final sync status:
|
|
115
|
+
- scanned files
|
|
116
|
+
- links added, removed, or unchanged
|
|
117
|
+
- fenced footers updated
|
|
118
|
+
- drift findings
|
|
119
|
+
- REVIEW-REQUIRED.md items created
|
|
114
120
|
|
|
115
121
|
### Pillars sync (native context)
|
|
116
122
|
- Call `lib/pillars.pillarizeExisting(projectRoot)` if Pillars is absent or
|
|
@@ -122,6 +128,8 @@ After feature work, every artifact that was impacted needs to reflect reality.
|
|
|
122
128
|
immediately and log the decision to `.godpowers/YOLO-DECISIONS.md`.
|
|
123
129
|
- Never read every file in `agents/` as project context. Only files with
|
|
124
130
|
`pillar:` frontmatter are Pillars files.
|
|
131
|
+
- Report whether Pillars work was initialized, applied, proposed, skipped, or
|
|
132
|
+
no-op.
|
|
125
133
|
|
|
126
134
|
### AI-tool context refresh (always, unless never-ask)
|
|
127
135
|
- Read `state.json` for `project.context-prompt-answered`
|
|
@@ -134,16 +142,36 @@ After feature work, every artifact that was impacted needs to reflect reality.
|
|
|
134
142
|
- Idempotent: if content matches, no write occurs
|
|
135
143
|
- Never touches content outside the `<!-- godpowers:begin -->` /
|
|
136
144
|
`<!-- godpowers:end -->` fence
|
|
145
|
+
- Report whether context refresh spawned `god-context-writer`, changed files,
|
|
146
|
+
no-oped, or skipped because the project opted out.
|
|
147
|
+
|
|
148
|
+
### Checkpoint sync
|
|
149
|
+
- After state changes, refresh `.godpowers/CHECKPOINT.md` from disk state using
|
|
150
|
+
`lib/checkpoint.syncFromState(projectRoot, { nextCommand, nextReason })`
|
|
151
|
+
when the runtime is available.
|
|
152
|
+
- If checkpoint sync is unavailable in the host tool, say it was skipped and
|
|
153
|
+
include the reason.
|
|
154
|
+
- Report the checkpoint path and whether it was created, updated, unchanged,
|
|
155
|
+
or skipped.
|
|
137
156
|
|
|
138
157
|
## Output
|
|
139
158
|
|
|
140
|
-
Write summary to `.godpowers/SYNC-LOG.md` (append-only)
|
|
159
|
+
Write summary to `.godpowers/SYNC-LOG.md` (append-only). The summary must
|
|
160
|
+
include both user-visible status and machine-checkable counts:
|
|
141
161
|
|
|
142
162
|
```markdown
|
|
143
163
|
## Sync: [intent] [timestamp]
|
|
144
164
|
|
|
145
165
|
Triggered by: [recipe name]
|
|
146
166
|
|
|
167
|
+
Sync status:
|
|
168
|
+
- Trigger: [manual /god-sync | /god-mode final sync | recipe closeout]
|
|
169
|
+
- Agent: god-updater
|
|
170
|
+
- Reverse-sync: scanned [N] files, updated [N] footers, created [N] review items
|
|
171
|
+
- Pillars sync: [applied/proposed/no-op/skipped], [N] pillar files
|
|
172
|
+
- Checkpoint sync: [created/updated/no-op/skipped] .godpowers/CHECKPOINT.md
|
|
173
|
+
- Context refresh: [spawned god-context-writer/no-op/skipped], [N] files
|
|
174
|
+
|
|
147
175
|
Updated:
|
|
148
176
|
- prd/PRD.md: added requirement P-MUST-12
|
|
149
177
|
- arch/ARCH.md: added ADR-007 (auth refactor)
|
|
@@ -157,11 +185,32 @@ Updated:
|
|
|
157
185
|
|
|
158
186
|
Have-nots re-validated: all passing.
|
|
159
187
|
|
|
160
|
-
|
|
188
|
+
Next: /god-status
|
|
161
189
|
```
|
|
162
190
|
|
|
163
191
|
Update PROGRESS.md with the latest tier statuses.
|
|
164
192
|
|
|
193
|
+
Return a compact user-facing closeout in the same shape:
|
|
194
|
+
|
|
195
|
+
```
|
|
196
|
+
Sync complete.
|
|
197
|
+
|
|
198
|
+
Sync status:
|
|
199
|
+
Trigger: <trigger>
|
|
200
|
+
Agent: god-updater
|
|
201
|
+
Local syncs:
|
|
202
|
+
+ reverse-sync: <counts and result>
|
|
203
|
+
+ pillars-sync: <counts and result>
|
|
204
|
+
+ checkpoint-sync: <created, updated, no-op, or skipped>
|
|
205
|
+
+ context-refresh: <spawned, no-op, or skipped>
|
|
206
|
+
Artifacts: <changed files or no-op>
|
|
207
|
+
Log: .godpowers/SYNC-LOG.md
|
|
208
|
+
|
|
209
|
+
Next:
|
|
210
|
+
Recommended: /god-status
|
|
211
|
+
Why: confirm the disk-derived project state after sync.
|
|
212
|
+
```
|
|
213
|
+
|
|
165
214
|
## Have-Nots
|
|
166
215
|
|
|
167
216
|
Sync FAILS if:
|
package/bin/install.js
CHANGED
|
@@ -186,6 +186,9 @@ function installSkillFile(srcFile, skillsDest, runtimeKey, targetName = null) {
|
|
|
186
186
|
const baseName = targetName || path.basename(srcFile, '.md');
|
|
187
187
|
if (runtimeKey === 'codex') {
|
|
188
188
|
const skillDir = path.join(skillsDest, baseName);
|
|
189
|
+
if (fs.existsSync(skillDir)) {
|
|
190
|
+
fs.rmSync(skillDir, { recursive: true, force: true });
|
|
191
|
+
}
|
|
189
192
|
ensureDir(skillDir);
|
|
190
193
|
fs.copyFileSync(srcFile, path.join(skillDir, 'SKILL.md'));
|
|
191
194
|
return;
|
|
@@ -647,7 +650,7 @@ function main() {
|
|
|
647
650
|
log('');
|
|
648
651
|
log(`\x1b[36mNext steps:\x1b[0m`);
|
|
649
652
|
log(` 1. Open your AI coding tool in any project directory`);
|
|
650
|
-
log(` 2. Type: \x1b[36m/god-mode\x1b[0m for full autonomous
|
|
653
|
+
log(` 2. Type: \x1b[36m/god-mode\x1b[0m for the full autonomous project run`);
|
|
651
654
|
log(` Or: \x1b[36m/god-next\x1b[0m to see what to run next`);
|
|
652
655
|
log(` Or: \x1b[36m/god-init\x1b[0m to start a new project`);
|
|
653
656
|
log('');
|
package/hooks/session-start.sh
CHANGED
|
@@ -52,7 +52,7 @@ if [ -f "$STATE_FILE" ]; then
|
|
|
52
52
|
jq -r '
|
|
53
53
|
" project: " + (.project.name // "(unnamed)"),
|
|
54
54
|
" mode: " + (.mode // "?") + (if ."mode-d-suite" then " (in suite)" else "" end),
|
|
55
|
-
" lifecycle: " + (."lifecycle-phase" // "in-arc")
|
|
55
|
+
" lifecycle: " + (if (."lifecycle-phase" // "in-arc") == "in-arc" then "in progress" else (."lifecycle-phase" // "in-arc") end)
|
|
56
56
|
' "$STATE_FILE" 2>/dev/null || head -20 "$STATE_FILE"
|
|
57
57
|
else
|
|
58
58
|
head -20 "$STATE_FILE"
|
|
@@ -66,7 +66,7 @@ fi
|
|
|
66
66
|
cat <<'EOF'
|
|
67
67
|
|
|
68
68
|
Next step: run /god-next (it inspects disk state and proposes the next command)
|
|
69
|
-
Or: /god-mode for the full autonomous
|
|
69
|
+
Or: /god-mode for the full autonomous project run
|
|
70
70
|
Or: /god-help to see the catalog
|
|
71
71
|
Or: /god-status for the full project snapshot
|
|
72
72
|
|
package/lib/checkpoint.js
CHANGED
|
@@ -128,6 +128,9 @@ function write(projectRoot, state) {
|
|
|
128
128
|
const facts = (state.facts || []).slice(0, MAX_FACTS);
|
|
129
129
|
const factsHash = sha256(JSON.stringify(facts));
|
|
130
130
|
const progress = state.progress || null;
|
|
131
|
+
const lifecycleDisplay = state.lifecycle === 'in-arc'
|
|
132
|
+
? 'in progress'
|
|
133
|
+
: (state.lifecycle || 'in progress');
|
|
131
134
|
|
|
132
135
|
const fm = [
|
|
133
136
|
'---',
|
|
@@ -171,7 +174,7 @@ function write(projectRoot, state) {
|
|
|
171
174
|
'',
|
|
172
175
|
`- Project: **${state.project || 'unnamed'}**`,
|
|
173
176
|
`- Mode: **${state.mode || '?'}**${state.modeDSuite ? ' (in multi-repo suite)' : ''}`,
|
|
174
|
-
`- Lifecycle phase: **${
|
|
177
|
+
`- Lifecycle phase: **${lifecycleDisplay}**`,
|
|
175
178
|
progressLine,
|
|
176
179
|
`- Current tier: **${state.currentTier || 'tier-0'}** / **${state.currentSubstep || 'orchestration'}**`,
|
|
177
180
|
`- Last action: \`${state.lastAction || 'unknown'}\` by ${state.lastActor || 'unknown'} at ${ts}`,
|
package/lib/context-writer.js
CHANGED
|
@@ -98,7 +98,7 @@ function buildCanonicalContent(state, opts = {}) {
|
|
|
98
98
|
lines.push('- `/god-status` - re-derive state from disk');
|
|
99
99
|
lines.push('- `/god-next` - what to run next, with reason');
|
|
100
100
|
lines.push('- `/god <free text>` - match intent to a recipe');
|
|
101
|
-
lines.push('- `/god-mode` - run the full autonomous
|
|
101
|
+
lines.push('- `/god-mode` - run the full autonomous project run');
|
|
102
102
|
lines.push('- `/god-lint` - validate artifacts against have-nots');
|
|
103
103
|
lines.push('- `/god-scan` - rebuild linkage map from code');
|
|
104
104
|
lines.push('- `/god-review-changes` - walk REVIEW-REQUIRED.md');
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "godpowers",
|
|
3
|
-
"version": "1.6.
|
|
3
|
+
"version": "1.6.11",
|
|
4
4
|
"description": "AI-powered development system: 106 slash commands and 39 specialist agents that take a project from raw idea to hardened production. Runs inside Claude Code, Codex, Cursor, Windsurf, Gemini, and 10+ other AI coding tools.",
|
|
5
5
|
"bin": {
|
|
6
6
|
"godpowers": "./bin/install.js"
|
package/references/HAVE-NOTS.md
CHANGED
|
@@ -454,7 +454,7 @@ Trust boundaries declared in docs but absent in code. Fail.
|
|
|
454
454
|
|
|
455
455
|
## Workflow-Specific Have-Nots
|
|
456
456
|
|
|
457
|
-
These apply to artifacts produced by
|
|
457
|
+
These apply to artifacts produced by focused workflows (postmortem, spike,
|
|
458
458
|
migration, docs, deps).
|
|
459
459
|
|
|
460
460
|
### Postmortem Have-Nots
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
|-------|---------|---------------------|
|
|
9
9
|
| Trivial | Single-file change, bug fix, config tweak | /god-fast (skip planning) |
|
|
10
10
|
| Small | One feature, one service, <1 week | /god-quick OR lightweight /god-mode |
|
|
11
|
-
| Medium | Multiple features, 1-3 services, 1-4 weeks | /god-mode (full
|
|
11
|
+
| Medium | Multiple features, 1-3 services, 1-4 weeks | /god-mode (full project run) |
|
|
12
12
|
| Large | Multiple services, team coordination, 1-3 months | /god-mode + /god-sprint (sprints) |
|
|
13
13
|
| Enterprise | Multiple teams, compliance, 3+ months | /god-mode + extension packs (security, etc.) |
|
|
14
14
|
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
|
|
6
6
|
## Core abstractions
|
|
7
7
|
|
|
8
|
-
**Tier**: a phase of the
|
|
8
|
+
**Tier**: a phase of the development workflow (0: Orchestration, 1: Planning, 2: Building, 3: Shipping).
|
|
9
9
|
|
|
10
10
|
**Sub-step**: a bounded unit within a tier (PRD, ARCH, Roadmap, Stack, Repo, Build, Deploy, Observe, Launch, Harden).
|
|
11
11
|
|
|
@@ -69,7 +69,7 @@ frontmatter. There's no proprietary binary state. To leave:
|
|
|
69
69
|
## What Godpowers does not try to be
|
|
70
70
|
|
|
71
71
|
Godpowers is opinionated about: artifact discipline, bidirectional
|
|
72
|
-
linkage, the four-tier
|
|
72
|
+
linkage, the four-tier workflow, the single-orchestrator rule, headless
|
|
73
73
|
runtime verification, and the substitution / three-label / have-nots
|
|
74
74
|
gates. It is intentionally not opinionated about: team ceremonies,
|
|
75
75
|
sprint cadence, ticket trackers, knowledge graphs, prompt engineering
|
package/routing/god-mode.yaml
CHANGED