godpowers 1.6.24 → 2.0.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/CHANGELOG.md +40 -0
- package/README.md +62 -7
- package/RELEASE.md +39 -47
- package/bin/install.js +21 -3
- package/extensions/data-pack/manifest.yaml +1 -1
- package/extensions/data-pack/package.json +1 -1
- package/extensions/launch-pack/manifest.yaml +1 -1
- package/extensions/launch-pack/package.json +1 -1
- package/extensions/security-pack/manifest.yaml +1 -1
- package/extensions/security-pack/package.json +1 -1
- package/fixtures/quick-proof/manifest.json +19 -0
- package/fixtures/quick-proof/project/.godpowers/prep/INITIAL-FINDINGS.md +5 -0
- package/fixtures/quick-proof/project/.godpowers/state.json +69 -0
- package/fixtures/quick-proof/project/README.md +5 -0
- package/fixtures/quick-proof/project/package.json +6 -0
- package/lib/feature-awareness.js +6 -0
- package/lib/quick-proof.js +153 -0
- package/package.json +5 -2
- package/skills/god-extension-info.md +1 -1
- package/skills/god-test-extension.md +1 -1
- package/skills/god-version.md +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -7,6 +7,46 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
7
7
|
|
|
8
8
|
## [Unreleased]
|
|
9
9
|
|
|
10
|
+
## [2.0.0] - 2026-05-16
|
|
11
|
+
|
|
12
|
+
Executable proof release.
|
|
13
|
+
|
|
14
|
+
### Added
|
|
15
|
+
- Added `npx godpowers quick-proof --project=.` as a read-only CLI helper that
|
|
16
|
+
renders a shipped fixture with real `.godpowers/state.json`, computed next
|
|
17
|
+
action, missing-artifact visibility, and current host guarantees.
|
|
18
|
+
- Added `lib/quick-proof.js` and `fixtures/quick-proof/` so the first-user
|
|
19
|
+
proof loop is packaged, deterministic, and testable.
|
|
20
|
+
- Added `docs/quick-proof.md`, `docs/proof-transcript.md`, and
|
|
21
|
+
`docs/adoption-canary.md` so onboarding, proof evidence, and real-world
|
|
22
|
+
canary work share one connected story.
|
|
23
|
+
- Added `scripts/run-adoption-canary.js` to clone an external repository and
|
|
24
|
+
capture CLI-verifiable trust signals: quick proof, dashboard status, and next
|
|
25
|
+
route output.
|
|
26
|
+
- Added `scripts/verify-published-install.js` to verify the published npm
|
|
27
|
+
artifact after release, including quick proof, dashboard status, Claude
|
|
28
|
+
install, and Codex metadata install.
|
|
29
|
+
|
|
30
|
+
### Changed
|
|
31
|
+
- README now leads with executable proof, starter command paths, runtime
|
|
32
|
+
expectations, and the accountable AI development thesis.
|
|
33
|
+
- Release checklist now includes published install verification through the
|
|
34
|
+
registry artifact instead of only the local checkout.
|
|
35
|
+
- Package contents checks now require `lib/quick-proof.js` and the shipped
|
|
36
|
+
quick-proof fixture state.
|
|
37
|
+
- Context and quality pillars now treat quick proof, adoption canary, and
|
|
38
|
+
published-install verification as durable repository truth.
|
|
39
|
+
|
|
40
|
+
### Guardrails
|
|
41
|
+
- `npm run test:quick-proof` verifies README links, quick proof docs,
|
|
42
|
+
transcript evidence, release checklist wiring, adoption canary wiring, local
|
|
43
|
+
links, and forbidden character rules.
|
|
44
|
+
- `npm run release:check` includes the quick-proof test and package payload
|
|
45
|
+
verification.
|
|
46
|
+
- The adoption canary harness does not replace host slash-command execution.
|
|
47
|
+
It captures CLI-verifiable signals and clearly leaves `/god-preflight`,
|
|
48
|
+
`/god-audit`, and `/god-reconstruct` to the AI coding host.
|
|
49
|
+
|
|
10
50
|
## [1.6.24] - 2026-05-16
|
|
11
51
|
|
|
12
52
|
Strict background release readiness.
|
package/README.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
[](https://github.com/aihxp/godpowers/actions/workflows/ci.yml)
|
|
4
4
|
[](LICENSE)
|
|
5
|
-
[](CHANGELOG.md)
|
|
6
6
|
[](https://www.npmjs.com/package/godpowers)
|
|
7
7
|
|
|
8
8
|
**Ship fast. Ship right. Ship everything. Ship accountably.**
|
|
@@ -12,12 +12,26 @@ idea to hardened production. It runs as **slash commands inside your AI coding
|
|
|
12
12
|
tool** (Claude Code, Codex, Cursor, etc.) that orchestrate **specialist agents**
|
|
13
13
|
in fresh contexts to do the work.
|
|
14
14
|
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
15
|
+
Want the short proof first? Start with [Quick Proof](docs/quick-proof.md) to
|
|
16
|
+
run `npx godpowers quick-proof --project=.`, see transcript excerpts, pick a
|
|
17
|
+
starter command set, and understand runtime expectations before reading the
|
|
18
|
+
full reference.
|
|
19
|
+
|
|
20
|
+
Godpowers makes AI coding accountable: every serious run should leave disk
|
|
21
|
+
state, artifacts, validation gates, host guarantees, and a next action. Code is
|
|
22
|
+
only one output. The project memory and proof trail matter too.
|
|
23
|
+
|
|
24
|
+
Version 2.0.0 makes the proof loop executable. `npx godpowers quick-proof
|
|
25
|
+
--project=.` now renders a shipped fixture with real `.godpowers/state.json`,
|
|
26
|
+
computed next action, missing-artifact visibility, and host guarantees. The
|
|
27
|
+
release also ships a proof transcript, adoption canary harness, published npm
|
|
28
|
+
install verifier, and package checks that require the proof fixture to ship.
|
|
29
|
+
|
|
30
|
+
Strict release readiness remains fail-closed. Godpowers requires delegated
|
|
31
|
+
release checks to cover root docs, docs, agents, skills, routing, workflows,
|
|
32
|
+
schema, templates, references, hooks, lib, scripts, tests, fixtures, GitHub
|
|
33
|
+
workflows, package metadata, npm, GitHub release, CI, publish workflow, and
|
|
34
|
+
local install state before a human-approved release executor can run.
|
|
21
35
|
|
|
22
36
|
The dashboard now starts with an action brief and a host guarantee line: the
|
|
23
37
|
next command, why it is recommended, whether the project is ready, the first
|
|
@@ -40,6 +54,17 @@ It fuses four disciplines into one unified workflow:
|
|
|
40
54
|
- **Team intelligence** - scale-adaptive complexity, specialized agent personas
|
|
41
55
|
(PM, Architect, Executor, Reviewer, Harden Auditor, etc.).
|
|
42
56
|
|
|
57
|
+
## What Godpowers Proves
|
|
58
|
+
|
|
59
|
+
Godpowers is designed to prove more than "the model wrote files." A useful run
|
|
60
|
+
should prove:
|
|
61
|
+
|
|
62
|
+
- The current state is on disk, not trapped in chat memory.
|
|
63
|
+
- The next action is derived from repository state.
|
|
64
|
+
- Planning artifacts, code changes, reviews, and launch checks can be inspected.
|
|
65
|
+
- Host guarantees are explicit, including degraded or simulated agent behavior.
|
|
66
|
+
- Release confidence covers tests, package contents, install surfaces, and docs.
|
|
67
|
+
|
|
43
68
|
## Install
|
|
44
69
|
|
|
45
70
|
```bash
|
|
@@ -64,6 +89,18 @@ mechanism against the installed `agents/god-*.md` files. If a host cannot
|
|
|
64
89
|
provide a true fresh-context spawn, Godpowers must report that limitation
|
|
65
90
|
instead of pretending a background agent ran.
|
|
66
91
|
|
|
92
|
+
### Runtime Expectations
|
|
93
|
+
|
|
94
|
+
| Runtime class | What to expect |
|
|
95
|
+
|---|---|
|
|
96
|
+
| Claude Code | Strong reference path when native agent spawning is available. |
|
|
97
|
+
| Codex | Strong installed support through `agents/*.toml` metadata backed by the same Markdown agent contracts. |
|
|
98
|
+
| Other install targets | Skills and agent contracts install, while host-native spawning depends on the tool. |
|
|
99
|
+
| Degraded hosts | Godpowers must report local-only or simulated agent behavior instead of hiding the limitation. |
|
|
100
|
+
|
|
101
|
+
See [Host capabilities](docs/host-capabilities.md) for the detailed guarantee
|
|
102
|
+
model.
|
|
103
|
+
|
|
67
104
|
## Usage
|
|
68
105
|
|
|
69
106
|
Open your AI coding tool in any project directory and type:
|
|
@@ -116,6 +153,21 @@ This reads `.godpowers/PROGRESS.md`, scans disk, reconciles any drift, and
|
|
|
116
153
|
suggests the next logical command with a compact action brief. The SessionStart
|
|
117
154
|
hook does the same thing when you open a new session in a Godpowers project.
|
|
118
155
|
|
|
156
|
+
### Start With A Path
|
|
157
|
+
|
|
158
|
+
If the full command surface feels large, begin with one of these paths and only
|
|
159
|
+
learn the next command when Godpowers recommends it.
|
|
160
|
+
|
|
161
|
+
| Goal | Starter path |
|
|
162
|
+
|---|---|
|
|
163
|
+
| Start a product | `/god-init`, `/god-prd`, `/god-design`, `/god-arch`, `/god-roadmap`, `/god-stack`, `/god-build` |
|
|
164
|
+
| Add a feature | `/god-feature`, `/god-reconcile`, `/god-build`, `/god-review`, `/god-sync` |
|
|
165
|
+
| Fix production | `/god-hotfix`, `/god-debug`, `/god-harden`, `/god-postmortem` |
|
|
166
|
+
| Audit an existing repo | `/god-preflight`, `/god-audit`, `/god-archaeology`, `/god-tech-debt` |
|
|
167
|
+
| Ship a release | `/god-status`, `/god-harden`, `/god-launch`, `npm run release:check` |
|
|
168
|
+
| Maintain project health | `/god-hygiene`, `/god-update-deps`, `/god-docs`, `/god-check-todos` |
|
|
169
|
+
| Extend Godpowers | `/god-extension-add`, `/god-extension-list`, `npx godpowers extension-scaffold --name=@godpowers/my-pack --output=.` |
|
|
170
|
+
|
|
119
171
|
The same status engine is available from the installer CLI for humans, CI,
|
|
120
172
|
Codex, Claude, Cursor, Gemini, OpenCode, Windsurf, Antigravity, and any host
|
|
121
173
|
runtime that can execute Node:
|
|
@@ -125,6 +177,7 @@ npx godpowers status --project=.
|
|
|
125
177
|
npx godpowers next --project=.
|
|
126
178
|
npx godpowers status --project=. --brief
|
|
127
179
|
npx godpowers status --project=. --json
|
|
180
|
+
npx godpowers quick-proof --project=.
|
|
128
181
|
npx godpowers dogfood
|
|
129
182
|
npx godpowers extension-scaffold --name=@godpowers/my-pack --output=.
|
|
130
183
|
```
|
|
@@ -379,9 +432,11 @@ Pi. T3 Code inherits from the underlying agent (Codex / Claude / OpenCode).
|
|
|
379
432
|
## Full reference
|
|
380
433
|
|
|
381
434
|
- [Getting Started](docs/getting-started.md)
|
|
435
|
+
- [Quick Proof](docs/quick-proof.md)
|
|
382
436
|
- [Concepts](docs/concepts.md)
|
|
383
437
|
- [Command reference (all 110 skills + 40 agents)](docs/reference.md)
|
|
384
438
|
- [Feature awareness](docs/feature-awareness.md)
|
|
439
|
+
- [Adoption Canary](docs/adoption-canary.md)
|
|
385
440
|
- [Repository documentation sync](docs/repo-doc-sync.md)
|
|
386
441
|
- [Repository surface sync](docs/repo-surface-sync.md)
|
|
387
442
|
- [Roadmap](docs/ROADMAP.md)
|
package/RELEASE.md
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
# Godpowers
|
|
1
|
+
# Godpowers 2.0.0 Release
|
|
2
2
|
|
|
3
3
|
Date: 2026-05-16
|
|
4
4
|
|
|
5
|
-
Godpowers
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
5
|
+
Godpowers 2.0.0 is the executable proof release. It turns the first-user trust
|
|
6
|
+
loop from documentation into a packaged command: `npx godpowers quick-proof
|
|
7
|
+
--project=.`. The command renders a shipped fixture with real
|
|
8
|
+
`.godpowers/state.json`, computed next action, missing-artifact visibility, and
|
|
9
|
+
host guarantees from the caller's environment.
|
|
10
10
|
|
|
11
11
|
## What is stable
|
|
12
12
|
|
|
@@ -20,18 +20,14 @@ blocked.
|
|
|
20
20
|
- Shared runtime bundle at `<runtime>/godpowers-runtime`
|
|
21
21
|
- Native Pillars project context through `AGENTS.md` and `agents/*.md`
|
|
22
22
|
- `.godpowers/` workflow state and artifact layout
|
|
23
|
-
-
|
|
24
|
-
-
|
|
23
|
+
- Dashboard action briefs for next-step compression
|
|
24
|
+
- Dashboard host guarantees for full, degraded, and unknown runtime capability
|
|
25
|
+
- `godpowers status --project .` and `godpowers next --project .`
|
|
26
|
+
- `godpowers quick-proof --project .`
|
|
25
27
|
- Planning-system migration for GSD, BMAD, and Superpowers
|
|
26
|
-
- Managed sync-back companion files for imported source systems
|
|
27
|
-
- Feature awareness for existing Godpowers projects
|
|
28
28
|
- Repository documentation sync checks
|
|
29
29
|
- Repository surface sync checks
|
|
30
30
|
- Route quality, recipe coverage, and release surface sync checks
|
|
31
|
-
- Dashboard action briefs for next-step compression
|
|
32
|
-
- Dashboard host guarantees for full, degraded, and unknown runtime capability
|
|
33
|
-
- Agent-spawn trace event guardrails
|
|
34
|
-
- Mode D suite readiness checks
|
|
35
31
|
- Messy-repo dogfood scenarios
|
|
36
32
|
- Extension authoring scaffold helper
|
|
37
33
|
- Mode D suite release dry-run planner
|
|
@@ -39,47 +35,43 @@ blocked.
|
|
|
39
35
|
|
|
40
36
|
## What is new
|
|
41
37
|
|
|
42
|
-
- Added `
|
|
43
|
-
- Added
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
- Updated auto-invoke visibility docs so strict release readiness is a Level 2
|
|
54
|
-
read-only local automation candidate.
|
|
38
|
+
- Added `lib/quick-proof.js` and the packaged `fixtures/quick-proof/` project.
|
|
39
|
+
- Added the `quick-proof` CLI command as the first executable proof path.
|
|
40
|
+
- Added `docs/quick-proof.md` to make the first 10 minutes concrete.
|
|
41
|
+
- Added `docs/proof-transcript.md` with captured command output.
|
|
42
|
+
- Added `docs/adoption-canary.md` with pass/fail criteria and feedback routing.
|
|
43
|
+
- Added `scripts/run-adoption-canary.js` to clone an external repo and capture
|
|
44
|
+
quick proof, dashboard status, and next-route output.
|
|
45
|
+
- Added `scripts/verify-published-install.js` to verify the npm registry
|
|
46
|
+
artifact after publish.
|
|
47
|
+
- Updated README, getting started, reference, release checklist, and Pillars
|
|
48
|
+
context so executable proof is part of the product surface.
|
|
55
49
|
|
|
56
50
|
## Guardrails
|
|
57
51
|
|
|
58
|
-
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
-
|
|
65
|
-
|
|
52
|
+
- Quick proof is read-only and deterministic.
|
|
53
|
+
- Quick proof reports the user's current host guarantees separately from the
|
|
54
|
+
shipped fixture state.
|
|
55
|
+
- Package contents checks require the quick-proof module and fixture state.
|
|
56
|
+
- Published install verification checks quick proof, status, next, Claude
|
|
57
|
+
install, and Codex metadata install against the registry artifact.
|
|
58
|
+
- The adoption canary harness captures CLI-verifiable signals only. Host slash
|
|
59
|
+
commands such as `/god-preflight`, `/god-audit`, and `/god-reconstruct` still
|
|
60
|
+
require an AI coding host.
|
|
66
61
|
|
|
67
62
|
## Validation
|
|
68
63
|
|
|
69
64
|
Release validation includes:
|
|
70
65
|
|
|
71
|
-
- `
|
|
72
|
-
- `node scripts/
|
|
73
|
-
- `node scripts/test-recipes.js`
|
|
74
|
-
- source scan for forbidden dash characters in edited files
|
|
66
|
+
- `npm run test:quick-proof`
|
|
67
|
+
- `node scripts/run-adoption-canary.js <repo> --output=<report>`
|
|
75
68
|
- `npm run release:check`
|
|
76
69
|
- `npm pack --json`
|
|
77
|
-
-
|
|
78
|
-
- local
|
|
79
|
-
-
|
|
80
|
-
-
|
|
81
|
-
-
|
|
82
|
-
- all-runtime `godpowers --all` refresh after published install
|
|
70
|
+
- local uninstall of previous runtime installs
|
|
71
|
+
- local reinstall from the generated tarball
|
|
72
|
+
- npm publish with provenance when available
|
|
73
|
+
- `node scripts/verify-published-install.js godpowers@latest`
|
|
74
|
+
- GitHub release creation for `v2.0.0`
|
|
83
75
|
|
|
84
|
-
The `
|
|
85
|
-
`godpowers@
|
|
76
|
+
The `v2.0.0` tag should point to the release commit that matches the npm
|
|
77
|
+
`godpowers@2.0.0` package.
|
package/bin/install.js
CHANGED
|
@@ -322,6 +322,7 @@ function parseArgs(argv) {
|
|
|
322
322
|
switch (arg) {
|
|
323
323
|
case 'status':
|
|
324
324
|
case 'next':
|
|
325
|
+
case 'quick-proof':
|
|
325
326
|
case 'automation-status':
|
|
326
327
|
case 'automation-setup':
|
|
327
328
|
case 'dogfood':
|
|
@@ -594,15 +595,16 @@ function showHelp() {
|
|
|
594
595
|
log('Commands:');
|
|
595
596
|
log(' status Show the Godpowers Dashboard for a project');
|
|
596
597
|
log(' next Show the dashboard and recommended next command');
|
|
598
|
+
log(' quick-proof Show a runnable proof from the shipped fixture');
|
|
597
599
|
log(' automation-status Show host automation provider support');
|
|
598
600
|
log(' automation-setup Show an opt-in automation setup plan');
|
|
599
601
|
log(' dogfood Run built-in messy-repo dogfood scenarios');
|
|
600
602
|
log(' extension-scaffold Create a publishable extension pack skeleton');
|
|
601
603
|
log('');
|
|
602
604
|
log('Options:');
|
|
603
|
-
log(' --project=<path> Project root for status, next, or automation commands');
|
|
604
|
-
log(' --json Emit JSON for status, next, or automation commands');
|
|
605
|
-
log(' --brief Render
|
|
605
|
+
log(' --project=<path> Project root for status, next, proof, or automation commands');
|
|
606
|
+
log(' --json Emit JSON for status, next, proof, or automation commands');
|
|
607
|
+
log(' --brief Render compact output for status, next, or proof');
|
|
606
608
|
log(' --name=<scope/name> Extension package name for extension-scaffold');
|
|
607
609
|
log(' --output=<path> Extension output root for extension-scaffold');
|
|
608
610
|
log(' --skill=<name> Extension skill name for extension-scaffold');
|
|
@@ -632,6 +634,7 @@ function showHelp() {
|
|
|
632
634
|
log('Examples:');
|
|
633
635
|
log(' npx godpowers status --project=.');
|
|
634
636
|
log(' npx godpowers next --project=.');
|
|
637
|
+
log(' npx godpowers quick-proof --project=.');
|
|
635
638
|
log(' npx godpowers automation-status --project=.');
|
|
636
639
|
log(' npx godpowers automation-setup --project=.');
|
|
637
640
|
log(' npx godpowers dogfood');
|
|
@@ -681,6 +684,16 @@ function runDogfoodCommand(opts) {
|
|
|
681
684
|
if (result.status !== 'pass') process.exit(1);
|
|
682
685
|
}
|
|
683
686
|
|
|
687
|
+
function runQuickProofCommand(opts) {
|
|
688
|
+
const quickProof = require('../lib/quick-proof');
|
|
689
|
+
const result = quickProof.compute(opts.project);
|
|
690
|
+
if (opts.json) {
|
|
691
|
+
console.log(JSON.stringify(result, null, 2));
|
|
692
|
+
} else {
|
|
693
|
+
console.log(quickProof.render(result, { brief: opts.brief }));
|
|
694
|
+
}
|
|
695
|
+
}
|
|
696
|
+
|
|
684
697
|
function runExtensionScaffoldCommand(opts) {
|
|
685
698
|
const authoring = require('../lib/extension-authoring');
|
|
686
699
|
if (!opts.extensionName) {
|
|
@@ -726,6 +739,11 @@ function main() {
|
|
|
726
739
|
return;
|
|
727
740
|
}
|
|
728
741
|
|
|
742
|
+
if (opts.command === 'quick-proof') {
|
|
743
|
+
runQuickProofCommand(opts);
|
|
744
|
+
return;
|
|
745
|
+
}
|
|
746
|
+
|
|
729
747
|
if (opts.command === 'automation-status' || opts.command === 'automation-setup') {
|
|
730
748
|
runAutomationCommand(opts);
|
|
731
749
|
return;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "quick-proof",
|
|
3
|
+
"description": "Deterministic fixture for the Godpowers quick proof CLI command.",
|
|
4
|
+
"project": "quick-proof-saas",
|
|
5
|
+
"proves": [
|
|
6
|
+
"state on disk",
|
|
7
|
+
"missing artifacts",
|
|
8
|
+
"next command",
|
|
9
|
+
"host guarantees"
|
|
10
|
+
],
|
|
11
|
+
"expected": {
|
|
12
|
+
"state": "in progress",
|
|
13
|
+
"next": "/god-prd",
|
|
14
|
+
"missing": [
|
|
15
|
+
".godpowers/prd/PRD.md",
|
|
16
|
+
".godpowers/roadmap/ROADMAP.md"
|
|
17
|
+
]
|
|
18
|
+
}
|
|
19
|
+
}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
# Initial Findings
|
|
2
|
+
|
|
3
|
+
- [DECISION] This quick-proof fixture represents a project that has been initialized but does not have a PRD yet.
|
|
4
|
+
- [DECISION] The expected next command is `/god-prd`.
|
|
5
|
+
- [HYPOTHESIS] A first-time user can understand the Godpowers proof loop by seeing state, missing artifacts, host guarantees, and a next action together.
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://godpowers.dev/schema/state.v1.json",
|
|
3
|
+
"version": "1.0.0",
|
|
4
|
+
"project": {
|
|
5
|
+
"name": "quick-proof-saas",
|
|
6
|
+
"started": "2026-05-16T00:00:00.000Z"
|
|
7
|
+
},
|
|
8
|
+
"active-workstream": "main",
|
|
9
|
+
"tiers": {
|
|
10
|
+
"tier-0": {
|
|
11
|
+
"orchestration": {
|
|
12
|
+
"status": "done",
|
|
13
|
+
"updated": "2026-05-16T00:00:00.000Z"
|
|
14
|
+
}
|
|
15
|
+
},
|
|
16
|
+
"tier-1": {
|
|
17
|
+
"prd": {
|
|
18
|
+
"status": "pending"
|
|
19
|
+
},
|
|
20
|
+
"arch": {
|
|
21
|
+
"status": "pending"
|
|
22
|
+
},
|
|
23
|
+
"roadmap": {
|
|
24
|
+
"status": "pending"
|
|
25
|
+
},
|
|
26
|
+
"stack": {
|
|
27
|
+
"status": "pending"
|
|
28
|
+
},
|
|
29
|
+
"design": {
|
|
30
|
+
"status": "not-required",
|
|
31
|
+
"reason": "Fixture is focused on state and routing proof."
|
|
32
|
+
},
|
|
33
|
+
"product": {
|
|
34
|
+
"status": "not-required",
|
|
35
|
+
"reason": "Fixture is focused on state and routing proof."
|
|
36
|
+
}
|
|
37
|
+
},
|
|
38
|
+
"tier-2": {
|
|
39
|
+
"repo": {
|
|
40
|
+
"status": "pending"
|
|
41
|
+
},
|
|
42
|
+
"build": {
|
|
43
|
+
"status": "pending"
|
|
44
|
+
}
|
|
45
|
+
},
|
|
46
|
+
"tier-3": {
|
|
47
|
+
"deploy": {
|
|
48
|
+
"status": "pending"
|
|
49
|
+
},
|
|
50
|
+
"observe": {
|
|
51
|
+
"status": "pending"
|
|
52
|
+
},
|
|
53
|
+
"launch": {
|
|
54
|
+
"status": "pending"
|
|
55
|
+
},
|
|
56
|
+
"harden": {
|
|
57
|
+
"status": "pending"
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
},
|
|
61
|
+
"lifecycle-phase": "in-arc",
|
|
62
|
+
"linkage": {
|
|
63
|
+
"coverage-pct": 0,
|
|
64
|
+
"orphan-count": 0,
|
|
65
|
+
"drift-count": 0,
|
|
66
|
+
"review-required-items": 0
|
|
67
|
+
},
|
|
68
|
+
"yolo-decisions": []
|
|
69
|
+
}
|
package/lib/feature-awareness.js
CHANGED
|
@@ -83,6 +83,12 @@ const FEATURES = [
|
|
|
83
83
|
commands: ['/god-status', '/god-next'],
|
|
84
84
|
description: 'Report full, degraded, or unknown host guarantees in dashboard output.'
|
|
85
85
|
},
|
|
86
|
+
{
|
|
87
|
+
id: 'quick-proof',
|
|
88
|
+
since: '2.0.0',
|
|
89
|
+
commands: ['godpowers quick-proof'],
|
|
90
|
+
description: 'Render a shipped proof fixture with computed next action and host guarantees.'
|
|
91
|
+
},
|
|
86
92
|
{
|
|
87
93
|
id: 'extension-authoring',
|
|
88
94
|
since: '1.6.22',
|
|
@@ -0,0 +1,153 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Quick proof runner.
|
|
3
|
+
*
|
|
4
|
+
* Renders a deterministic proof from a shipped fixture while detecting host
|
|
5
|
+
* guarantees from the caller's actual project and environment.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
const fs = require('fs');
|
|
9
|
+
const path = require('path');
|
|
10
|
+
|
|
11
|
+
const dashboard = require('./dashboard');
|
|
12
|
+
const hostCapabilities = require('./host-capabilities');
|
|
13
|
+
|
|
14
|
+
const FIXTURE_ROOT = path.join(__dirname, '..', 'fixtures', 'quick-proof', 'project');
|
|
15
|
+
const MANIFEST_PATH = path.join(__dirname, '..', 'fixtures', 'quick-proof', 'manifest.json');
|
|
16
|
+
|
|
17
|
+
function readJson(filePath) {
|
|
18
|
+
return JSON.parse(fs.readFileSync(filePath, 'utf8'));
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
function relFixturePath(absPath) {
|
|
22
|
+
return path.relative(path.join(__dirname, '..'), absPath).split(path.sep).join('/');
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
function compute(projectRoot = process.cwd(), opts = {}) {
|
|
26
|
+
const fixtureRoot = opts.fixtureRoot || FIXTURE_ROOT;
|
|
27
|
+
const manifestPath = opts.manifestPath || MANIFEST_PATH;
|
|
28
|
+
const manifest = readJson(manifestPath);
|
|
29
|
+
const fixtureDashboard = dashboard.compute(fixtureRoot, { git: false });
|
|
30
|
+
const host = opts.hostReport || hostCapabilities.detect(projectRoot, opts.hostOptions || {});
|
|
31
|
+
const focusedActionBrief = {
|
|
32
|
+
recommended: fixtureDashboard.next && fixtureDashboard.next.command
|
|
33
|
+
? fixtureDashboard.next.command
|
|
34
|
+
: 'describe the next intent',
|
|
35
|
+
reason: fixtureDashboard.next && fixtureDashboard.next.reason
|
|
36
|
+
? fixtureDashboard.next.reason
|
|
37
|
+
: 'No route was computed.',
|
|
38
|
+
confidence: host.level === 'unknown' ? 'needs attention' : 'ready',
|
|
39
|
+
blockers: host.gaps && host.gaps.length > 0 ? [`Host: ${host.gaps[0]}`] : [],
|
|
40
|
+
overflow: host.gaps && host.gaps.length > 1 ? host.gaps.length - 1 : 0
|
|
41
|
+
};
|
|
42
|
+
|
|
43
|
+
const proof = {
|
|
44
|
+
source: 'quick-proof fixture',
|
|
45
|
+
manifest,
|
|
46
|
+
projectRoot: path.resolve(projectRoot),
|
|
47
|
+
fixtureRoot,
|
|
48
|
+
fixturePath: relFixturePath(fixtureRoot),
|
|
49
|
+
statePath: relFixturePath(path.join(fixtureRoot, '.godpowers', 'state.json')),
|
|
50
|
+
dashboard: {
|
|
51
|
+
state: fixtureDashboard.state,
|
|
52
|
+
progress: fixtureDashboard.progress,
|
|
53
|
+
planning: fixtureDashboard.planning,
|
|
54
|
+
next: fixtureDashboard.next,
|
|
55
|
+
actionBrief: focusedActionBrief
|
|
56
|
+
},
|
|
57
|
+
host,
|
|
58
|
+
commands: [
|
|
59
|
+
`npx godpowers quick-proof --project=${projectRoot}`,
|
|
60
|
+
`npx godpowers status --project=${fixtureRoot} --brief`,
|
|
61
|
+
`npx godpowers next --project=${fixtureRoot} --brief`,
|
|
62
|
+
`npx godpowers status --project=${projectRoot} --brief`
|
|
63
|
+
],
|
|
64
|
+
evidence: [
|
|
65
|
+
{
|
|
66
|
+
label: 'State on disk',
|
|
67
|
+
value: relFixturePath(path.join(fixtureRoot, '.godpowers', 'state.json'))
|
|
68
|
+
},
|
|
69
|
+
{
|
|
70
|
+
label: 'Next action',
|
|
71
|
+
value: fixtureDashboard.next && fixtureDashboard.next.command
|
|
72
|
+
? fixtureDashboard.next.command
|
|
73
|
+
: 'describe the next intent'
|
|
74
|
+
},
|
|
75
|
+
{
|
|
76
|
+
label: 'Missing artifact',
|
|
77
|
+
value: fixtureDashboard.planning.prd.status === 'missing'
|
|
78
|
+
? '.godpowers/prd/PRD.md'
|
|
79
|
+
: 'none'
|
|
80
|
+
},
|
|
81
|
+
{
|
|
82
|
+
label: 'Host guarantees',
|
|
83
|
+
value: hostCapabilities.summary(host)
|
|
84
|
+
}
|
|
85
|
+
]
|
|
86
|
+
};
|
|
87
|
+
|
|
88
|
+
return proof;
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
function render(proof, opts = {}) {
|
|
92
|
+
const brief = proof.dashboard.actionBrief || {};
|
|
93
|
+
const next = proof.dashboard.next || {};
|
|
94
|
+
const progress = proof.dashboard.progress || {};
|
|
95
|
+
const planning = proof.dashboard.planning || {};
|
|
96
|
+
|
|
97
|
+
if (opts.brief) {
|
|
98
|
+
return [
|
|
99
|
+
'Godpowers Quick Proof',
|
|
100
|
+
'',
|
|
101
|
+
'Action brief:',
|
|
102
|
+
` Next: ${brief.recommended || next.command || 'describe the next intent'}`,
|
|
103
|
+
` Why: ${brief.reason || next.reason || 'No route was computed.'}`,
|
|
104
|
+
` Readiness: ${brief.confidence || 'unknown'}`,
|
|
105
|
+
` Host guarantees: ${hostCapabilities.summary(proof.host)}`,
|
|
106
|
+
'',
|
|
107
|
+
'Evidence:',
|
|
108
|
+
` State on disk: ${proof.statePath}`,
|
|
109
|
+
` Fixture: ${proof.fixturePath}`,
|
|
110
|
+
` PRD: ${planning.prd ? planning.prd.status : 'unknown'}`,
|
|
111
|
+
` Roadmap: ${planning.roadmap ? planning.roadmap.status : 'unknown'}`
|
|
112
|
+
].join('\n');
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
return [
|
|
116
|
+
'Godpowers Quick Proof',
|
|
117
|
+
'',
|
|
118
|
+
`Source: shipped fixture (${proof.fixturePath})`,
|
|
119
|
+
'',
|
|
120
|
+
'What this proves:',
|
|
121
|
+
' 1. Godpowers can read project state from disk.',
|
|
122
|
+
' 2. Godpowers can name missing artifacts instead of inventing completion.',
|
|
123
|
+
' 3. Godpowers can recommend the next command from state.',
|
|
124
|
+
' 4. Godpowers can report host guarantees separately from fixture state.',
|
|
125
|
+
'',
|
|
126
|
+
'Dashboard proof:',
|
|
127
|
+
` State: ${proof.dashboard.state}`,
|
|
128
|
+
` Progress: ${progress.percent || 0}% (${progress.completed || 0} of ${progress.total || 0} tracked steps complete)`,
|
|
129
|
+
` PRD: ${planning.prd ? planning.prd.status : 'unknown'}`,
|
|
130
|
+
` Roadmap: ${planning.roadmap ? planning.roadmap.status : 'unknown'}`,
|
|
131
|
+
` Next: ${next.command || 'describe the next intent'}`,
|
|
132
|
+
` Why: ${next.reason || 'No route was computed.'}`,
|
|
133
|
+
` Host guarantees: ${hostCapabilities.summary(proof.host)}`,
|
|
134
|
+
'',
|
|
135
|
+
'Evidence:',
|
|
136
|
+
...proof.evidence.map((item, index) => ` ${index + 1}. ${item.label}: ${item.value}`),
|
|
137
|
+
'',
|
|
138
|
+
'Try it on the fixture:',
|
|
139
|
+
` npx godpowers status --project=${proof.fixtureRoot} --brief`,
|
|
140
|
+
` npx godpowers next --project=${proof.fixtureRoot} --brief`,
|
|
141
|
+
'',
|
|
142
|
+
'Try it on your project:',
|
|
143
|
+
` npx godpowers status --project=${proof.projectRoot} --brief`,
|
|
144
|
+
` npx godpowers next --project=${proof.projectRoot} --brief`
|
|
145
|
+
].join('\n');
|
|
146
|
+
}
|
|
147
|
+
|
|
148
|
+
module.exports = {
|
|
149
|
+
compute,
|
|
150
|
+
render,
|
|
151
|
+
FIXTURE_ROOT,
|
|
152
|
+
MANIFEST_PATH
|
|
153
|
+
};
|
package/package.json
CHANGED
|
@@ -1,15 +1,18 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "godpowers",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "2.0.0",
|
|
4
4
|
"description": "AI-powered development system: 110 slash commands and 40 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"
|
|
7
7
|
},
|
|
8
8
|
"scripts": {
|
|
9
|
-
"test": "node scripts/validate-skills.js && node scripts/test-doc-surface-counts.js && bash scripts/smoke.sh && node scripts/test-runtime.js && node scripts/test-router.js && node scripts/test-recipes.js && node scripts/test-context-writer.js && node scripts/test-pillars.js && node scripts/test-artifact-linter.js && node scripts/test-artifact-diff.js && node scripts/test-design-foundation.js && node scripts/test-linkage.js && node scripts/test-impact.js && node scripts/test-reverse-sync.js && node scripts/test-planning-systems.js && node scripts/test-feature-awareness.js && node scripts/test-repo-doc-sync.js && node scripts/test-repo-surface-sync.js && node scripts/test-automation-surface-sync.js && node scripts/test-host-capabilities.js && node scripts/test-extension-authoring.js && node scripts/test-dogfood-runner.js && node scripts/test-integration.js && node scripts/test-cross-artifact.js && node scripts/test-awesome-design.js && node scripts/test-skillui-bridge.js && node scripts/test-runtime-verification.js && node scripts/test-agent-browser.js && node scripts/test-mode-d.js && node scripts/test-runtime-heuristics.js && node scripts/test-agent-validator.js && node scripts/test-story-validator.js && node scripts/test-state.js && node scripts/test-dashboard.js && node scripts/test-automation-providers.js && node scripts/test-intent.js && node scripts/test-events.js && node scripts/test-golden-artifacts.js && node scripts/test-install-smoke.js && node scripts/test-checkpoint.js && node scripts/test-extensions.js && node scripts/test-event-reader.js && node scripts/test-state-lock.js && node scripts/test-cost-saver.js && node scripts/test-budget-onoff.js && node scripts/test-workflow-runner.js && npm run test:e2e && node scripts/test-otel-exporter.js && node scripts/test-extensions-publish.js",
|
|
9
|
+
"test": "node scripts/validate-skills.js && node scripts/test-doc-surface-counts.js && node scripts/test-quick-proof.js && bash scripts/smoke.sh && node scripts/test-runtime.js && node scripts/test-router.js && node scripts/test-recipes.js && node scripts/test-context-writer.js && node scripts/test-pillars.js && node scripts/test-artifact-linter.js && node scripts/test-artifact-diff.js && node scripts/test-design-foundation.js && node scripts/test-linkage.js && node scripts/test-impact.js && node scripts/test-reverse-sync.js && node scripts/test-planning-systems.js && node scripts/test-feature-awareness.js && node scripts/test-repo-doc-sync.js && node scripts/test-repo-surface-sync.js && node scripts/test-automation-surface-sync.js && node scripts/test-host-capabilities.js && node scripts/test-extension-authoring.js && node scripts/test-dogfood-runner.js && node scripts/test-integration.js && node scripts/test-cross-artifact.js && node scripts/test-awesome-design.js && node scripts/test-skillui-bridge.js && node scripts/test-runtime-verification.js && node scripts/test-agent-browser.js && node scripts/test-mode-d.js && node scripts/test-runtime-heuristics.js && node scripts/test-agent-validator.js && node scripts/test-story-validator.js && node scripts/test-state.js && node scripts/test-dashboard.js && node scripts/test-automation-providers.js && node scripts/test-intent.js && node scripts/test-events.js && node scripts/test-golden-artifacts.js && node scripts/test-install-smoke.js && node scripts/test-checkpoint.js && node scripts/test-extensions.js && node scripts/test-event-reader.js && node scripts/test-state-lock.js && node scripts/test-cost-saver.js && node scripts/test-budget-onoff.js && node scripts/test-workflow-runner.js && npm run test:e2e && node scripts/test-otel-exporter.js && node scripts/test-extensions-publish.js",
|
|
10
10
|
"prepublishOnly": "npm run release:check",
|
|
11
11
|
"validate-skills": "node scripts/validate-skills.js",
|
|
12
12
|
"test:surface": "node scripts/test-doc-surface-counts.js",
|
|
13
|
+
"test:quick-proof": "node scripts/test-quick-proof.js",
|
|
14
|
+
"canary:adoption": "node scripts/run-adoption-canary.js",
|
|
15
|
+
"verify:published-install": "node scripts/verify-published-install.js",
|
|
13
16
|
"smoke": "bash scripts/smoke.sh",
|
|
14
17
|
"test:runtime": "node scripts/test-runtime.js",
|
|
15
18
|
"test:router": "node scripts/test-router.js",
|
|
@@ -49,7 +49,7 @@ Manifest: ./extensions/security-pack/manifest.yaml [OK]
|
|
|
49
49
|
apiVersion: godpowers/v1 [OK]
|
|
50
50
|
metadata.name: @godpowers/security-pack [OK]
|
|
51
51
|
metadata.version: 1.0.0 [OK]
|
|
52
|
-
engines.godpowers: >=0.
|
|
52
|
+
engines.godpowers: >=2.0.0 <3.0.0 [OK]
|
|
53
53
|
|
|
54
54
|
Provided surface:
|
|
55
55
|
agents/god-soc2-auditor.md [OK]
|
package/skills/god-version.md
CHANGED
|
@@ -14,7 +14,7 @@ Print version and a short capability summary.
|
|
|
14
14
|
## Output
|
|
15
15
|
|
|
16
16
|
```
|
|
17
|
-
Godpowers
|
|
17
|
+
Godpowers v2.0.0
|
|
18
18
|
Install: /Users/.../.claude/ (matches package.json)
|
|
19
19
|
Surface: 110 skills, 40 agents, 13 workflows, 40 recipes
|
|
20
20
|
Schema: intent.v1, state.v1, events.v1, workflow.v1, routing.v1, recipe.v1
|